|
SERiF v0.0.1a
Stellar Evolution and Rotation in Four Dimensions
|
Each started hook owns one invocation state and finishes once, including on exceptional exit. More...
#include <observers.hpp>
Public Member Functions | |
| NodeObservation (BeforeT &before, AfterT &after) | |
| If before fails, construction fails and no matching completion is due. | |
| NodeObservation (const NodeObservation &)=delete | |
| NodeObservation & | operator= (const NodeObservation &)=delete |
| ~NodeObservation () noexcept | |
| A throwing result transfer also interrupts the invocation; no catch/rethrow is needed. | |
| template<typename ResultT> | |
| void | returned (const ResultT &result) noexcept |
| Distinguish an ordinary value from a computation's value-based rejection. | |
Private Attributes | |
| AfterT & | m_after |
| std::invoke_result_t< BeforeT & > | m_state |
| int | m_exceptions |
| NodeOutcome | m_outcome {NodeOutcome::exception} |
Each started hook owns one invocation state and finishes once, including on exceptional exit.
|
inline |
If before fails, construction fails and no matching completion is due.
|
delete |
|
inlinenoexcept |
A throwing result transfer also interrupts the invocation; no catch/rethrow is needed.
|
delete |
|
inlinenoexcept |
Distinguish an ordinary value from a computation's value-based rejection.
|
private |
|
private |
|
private |
|
private |