22 #ifndef ELM_UTIL_CLEANER_H
23 #define ELM_UTIL_CLEANER_H
25 #include <elm/util/LockPtr.h>
26 #include <elm/data/List.h>
42 inline Deletor(T *
object): obj(object) { }
44 virtual void clean(
void) {
delete obj; }
71 {
add(
object);
return object; }
AutoCleaner(const LockPtr< T > &locked)
Definition: Cleaner.h:55
AutoCleaner(T *p=0)
Definition: Cleaner.h:54
~CleanList(void)
Definition: Cleaner.h:62
void add(T *p)
Definition: Cleaner.h:64
void clean(void)
Definition: util_Cleaner.cpp:109
Cleaner * operator()(Cleaner *cleaner)
Definition: Cleaner.h:67
void add(Cleaner *cleaner)
Definition: util_Cleaner.cpp:100
T * operator()(T *object)
Definition: Cleaner.h:70
const LockPtr< T > & operator()(const LockPtr< T > &object)
Definition: Cleaner.h:68
virtual ~Cleaner(void)
Definition: Cleaner.h:34
virtual void clean(void)
Definition: Cleaner.h:33
Deletor(T *object)
Definition: Cleaner.h:42
virtual ~Deletor(void)
Definition: Cleaner.h:43
virtual void clean(void)
Definition: Cleaner.h:44
Printable< T, M > p(const T &data, const M &man)
Definition: Output.h:302