#include <src/util/ScopeGuard.h>
Public Member Functions | |
void | Dismiss () const throw () |
ScopeGuardImplBase () throw () | |
Protected Member Functions | |
ScopeGuardImplBase (const ScopeGuardImplBase &other) throw () | |
Copy-constructor takes over responsibility from other ScopeGuard. | |
~ScopeGuardImplBase () | |
Static Protected Member Functions | |
template<typename J> | |
static void | SafeExecute (J &j) throw () |
Protected Attributes | |
bool | dismissed_ |
Private Member Functions | |
ScopeGuardImplBase & | operator= (const ScopeGuardImplBase &) |
Copy-assignment operator is not implemented and private. |
See Andrei's and Petru Marginean's CUJ article http://www.cuj.com/documents/s=8000/cujcexp1812alexandr/alexandr.htm
Changes to the original code by Joshua Lehrer: http://www.lehrerfamily.com/scopeguard.html
Loki::ScopeGuardImplBase::~ScopeGuardImplBase | ( | ) | [inline, protected] |
Loki::ScopeGuardImplBase::ScopeGuardImplBase | ( | const ScopeGuardImplBase & | other | ) | throw () [inline, protected] |
Copy-constructor takes over responsibility from other ScopeGuard.
Loki::ScopeGuardImplBase::ScopeGuardImplBase | ( | ) | throw () [inline] |
void Loki::ScopeGuardImplBase::Dismiss | ( | ) | const throw () [inline] |
ScopeGuardImplBase& Loki::ScopeGuardImplBase::operator= | ( | const ScopeGuardImplBase & | ) | [private] |
Copy-assignment operator is not implemented and private.
static void Loki::ScopeGuardImplBase::SafeExecute | ( | J & | j | ) | throw () [inline, static, protected] |
Referenced by Loki::ObjScopeGuardImpl0< Obj, MemFun >::~ObjScopeGuardImpl0(), Loki::ObjScopeGuardImpl1< Obj, MemFun, P1 >::~ObjScopeGuardImpl1(), Loki::ObjScopeGuardImpl2< Obj, MemFun, P1, P2 >::~ObjScopeGuardImpl2(), Loki::ObjScopeGuardImpl3< Obj, MemFun, P1, P2, P3 >::~ObjScopeGuardImpl3(), Loki::ScopeGuardImpl0< F >::~ScopeGuardImpl0(), Loki::ScopeGuardImpl1< F, P1 >::~ScopeGuardImpl1(), Loki::ScopeGuardImpl2< F, P1, P2 >::~ScopeGuardImpl2(), Loki::ScopeGuardImpl3< F, P1, P2, P3 >::~ScopeGuardImpl3(), Loki::ScopeGuardImpl4< F, P1, P2, P3, P4 >::~ScopeGuardImpl4(), and Loki::ScopeGuardImpl5< F, P1, P2, P3, P4, P5 >::~ScopeGuardImpl5().
bool Loki::ScopeGuardImplBase::dismissed_ [mutable, protected] |
Referenced by Dismiss().