![]() |
Lumiera 0.pre.04
»edit your freedom«
|
#include "lib/del-stash.hpp"
Manage a collection of deleter functions.
This component can memorise addresses and deleter functions and trigger deletion of single objects, or delete all objects on demand or automatically on shutdown.
Definition at line 56 of file del-stash.hpp.
Classes | |
| class | Killer |
Public Member Functions | |
| DelStash (size_t elms_to_reserve=0) | |
| ~DelStash () | |
| size_t | size () const |
| template<typename TY > | |
| void | manage (TY *obj) |
| template<typename TY > | |
| void | manage (TY &obj) |
| void | manage (void *obj, KillFun *customDeleter) |
| template<typename TY > | |
| void | kill (TY *obj) |
| template<typename TY > | |
| void | kill (TY &obj) |
| void | killAll () |
Private Types | |
| typedef void | KillFun(void *) |
| typedef std::vector< Killer > | Killers |
Private Member Functions | |
| bool | isRegistered (const void *objAddress) |
| Killers::iterator | findEntry (const void *obj) |
| void | triggerKill (void *objAddress) |
Private Member Functions inherited from NonCopyable | |
| ~NonCopyable ()=default | |
| NonCopyable ()=default | |
| NonCopyable (NonCopyable const &)=delete | |
| NonCopyable & | operator= (NonCopyable const &)=delete |
Static Private Member Functions | |
| template<typename X > | |
| static void | how_to_kill (void *subject) |
| trampoline function to invoke destructor of the specific target type | |
Private Attributes | |
| Killers | killers_ |
|
inline |
Definition at line 104 of file del-stash.hpp.
References DelStash::killers_.
|
inline |
Definition at line 113 of file del-stash.hpp.
References DelStash::killAll().
Here is the call graph for this function:
|
private |
Definition at line 60 of file del-stash.hpp.
Definition at line 98 of file del-stash.hpp.
|
inline |
Definition at line 124 of file del-stash.hpp.
References DelStash::killers_.
Referenced by DelStash_test::checkAutoKill(), DelStash_test::checkCustomKill(), DelStash_test::checkMassKill(), and DelStash_test::checkSingleKill().
Here is the caller graph for this function:
|
inline |
Definition at line 138 of file del-stash.hpp.
References DelStash::isRegistered(), and DelStash::killers_.
Referenced by DelStash_test::checkAutoKill(), DelStash_test::checkCustomKill(), DelStash_test::checkSingleKill(), lib::test::anonymous_namespace{del-stash-test.cpp}::feedViktim(), and AdviceSystem::manageAdviceData().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 147 of file del-stash.hpp.
References DelStash::isRegistered(), and DelStash::killers_.
Here is the call graph for this function:
|
inline |
Definition at line 154 of file del-stash.hpp.
References DelStash::isRegistered(), and DelStash::killers_.
Here is the call graph for this function:
|
inline |
Definition at line 164 of file del-stash.hpp.
References DelStash::triggerKill().
Referenced by DelStash_test::checkAutoKill(), DelStash_test::checkCustomKill(), DelStash_test::checkSingleKill(), and AdviceSystem::discardEntry().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inline |
Definition at line 172 of file del-stash.hpp.
References DelStash::triggerKill().
Here is the call graph for this function:
|
inline |
Definition at line 178 of file del-stash.hpp.
References DelStash::killers_.
Referenced by DelStash::~DelStash(), and DelStash_test::checkMassKill().
Here is the caller graph for this function:
|
inlinestaticprivate |
trampoline function to invoke destructor of the specific target type
Definition at line 191 of file del-stash.hpp.
|
inlineprivate |
Definition at line 199 of file del-stash.hpp.
References DelStash::findEntry(), and DelStash::killers_.
Referenced by DelStash::manage(), DelStash::manage(), DelStash::manage(), and DelStash::triggerKill().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprivate |
Definition at line 206 of file del-stash.hpp.
References std::find(), and DelStash::killers_.
Referenced by DelStash::isRegistered(), and DelStash::triggerKill().
Here is the call graph for this function:
Here is the caller graph for this function:
|
inlineprivate |
Definition at line 213 of file del-stash.hpp.
References DelStash::findEntry(), DelStash::isRegistered(), and DelStash::killers_.
Referenced by DelStash::kill(), and DelStash::kill().
Here is the call graph for this function:
Here is the caller graph for this function:
|
private |
Definition at line 100 of file del-stash.hpp.
Referenced by DelStash::DelStash(), DelStash::findEntry(), DelStash::isRegistered(), DelStash::killAll(), DelStash::manage(), DelStash::manage(), DelStash::manage(), DelStash::size(), and DelStash::triggerKill().
Inheritance diagram for DelStash:
Collaboration diagram for DelStash: