MeVisLab Toolbox Reference
|
Go to the source code of this file.
Classes | |
class | ml::ScopeGuardDetail::ScopeGuard< Functor > |
Namespaces | |
namespace | ml |
Main documentation file for ML users and developers. | |
namespace | ml::ScopeGuardDetail |
Macros | |
#define | ML_UTILITIES_CONCATENATE_IMPL(s1, s2) s1##s2 |
Helper class for performing actions when the current scope is left. | |
#define | ML_UTILITIES_CONCATENATE(s1, s2) ML_UTILITIES_CONCATENATE_IMPL(s1,s2) |
#define | ML_UTILITIES_ANONYMOUS_VARIABLE(str) ML_UTILITIES_CONCATENATE(str,__LINE__) |
#define | SCOPE_EXIT |
Use this macro in case of an anonymous scope guard like SCOPE_EXIT { foo.needsToBeDoneOnLeavingTheScope(); };. | |
#define | EXPLICIT_SCOPE_EXIT ::ML_NAMESPACE::ScopeGuardDetail::ScopeGuardOnExit() + [&]() |
Use this macro in case you like an explicit ScopeGuard This is handy if there is a case where you want to dismiss the action to be taken on leaving the scope. | |
Enumerations | |
enum class | ml::ScopeGuardDetail::ScopeGuardOnExit |
Functions | |
template<class Functor > | |
ScopeGuard< Functor > | ml::ScopeGuardDetail::operator+ (ScopeGuardOnExit, Functor &&fn) |
#define EXPLICIT_SCOPE_EXIT ::ML_NAMESPACE::ScopeGuardDetail::ScopeGuardOnExit() + [&]() |
Use this macro in case you like an explicit ScopeGuard This is handy if there is a case where you want to dismiss the action to be taken on leaving the scope.
auto localGuard = EXPLICIT_SCOPE_EXIT { foo.needsToBeDoneOnLeavingTheScope(); }; ... if (specialCase) { localGuard.dismiss(); }
Note: Don't forget the semicolon after the closing brace!
Definition at line 116 of file mlScopeGuard.h.
#define ML_UTILITIES_ANONYMOUS_VARIABLE | ( | str | ) | ML_UTILITIES_CONCATENATE(str,__LINE__) |
Definition at line 33 of file mlScopeGuard.h.
Definition at line 25 of file mlScopeGuard.h.
Helper class for performing actions when the current scope is left.
Original implemention by Andrei Alexandrescu
Definition at line 24 of file mlScopeGuard.h.
#define SCOPE_EXIT |
Use this macro in case of an anonymous scope guard like SCOPE_EXIT { foo.needsToBeDoneOnLeavingTheScope(); };.
Note: Don't forget the semicolon after the closing brace!
Definition at line 96 of file mlScopeGuard.h.