#include <observerscopeguard.h>
Public Member Functions | |
ObserverScopeGuard () | |
MAXON_IMPLICIT | ObserverScopeGuard (ObserverScopeGuard &&src) |
template<typename LAMBDA , typename OBSERVABLE > | |
MAXON_IMPLICIT | ObserverScopeGuard (LAMBDA &&lambda, OBSERVABLE &observable) |
~ObserverScopeGuard () | |
template<typename LAMBDA , typename OBSERVABLE > | |
Result< void > | Init (LAMBDA &&lambda, OBSERVABLE &&observable) |
void | operator= (ObserverScopeGuard &&other) |
void | Disable () |
void | Enable () |
Result< void > | operator() () |
void | Reset () |
Result< void > | RemoveObserver () |
Private Member Functions | |
MAXON_DISALLOW_COPY_AND_ASSIGN (ObserverScopeGuard) | |
Private Attributes | |
Delegate< Result< void >)> | _deregisterCallable |
Bool | _isEnabled |
MAXON_IMPLICIT ObserverScopeGuard | ( | LAMBDA && | lambda, |
OBSERVABLE & | observable | ||
) |
~ObserverScopeGuard | ( | ) |
|
private |
Result<void> Init | ( | LAMBDA && | lambda, |
OBSERVABLE && | observable | ||
) |
void operator= | ( | ObserverScopeGuard && | other | ) |
void Disable | ( | ) |
void Enable | ( | ) |
Result<void> operator() | ( | ) |
void Reset | ( | ) |
Result<void> RemoveObserver | ( | ) |
|
private |