Helper template to implement auto_ptr<>-like classes, but executing a functor in the destructor, instead of always deleting things.
More...
#include <Auto_Functor.h>
List of all members.
Public Types |
typedef X | element_type |
typedef Functor | functor_type |
Public Member Functions |
| Auto_Functor (X *p=0, Functor functor=Functor()) |
| Constructor.
|
| Auto_Functor (Auto_Functor &rhs) |
Auto_Functor< X, Functor > & | operator= (Auto_Functor &rhs) |
template<typename Y > |
| Auto_Functor (Auto_Functor< Y, Functor > &rhs) |
template<typename Y > |
Auto_Functor< X, Functor > & | operator= (Auto_Functor< Y, Functor > &rhs) |
| ~Auto_Functor () |
X & | operator* () const |
X * | operator-> () const |
X * | get () |
X * | release () |
void | reset (X *p=0) |
void | reset (X *p, Functor f) |
Functor const & | functor () const |
| Auto_Functor (Auto_Functor_Ref< X, Functor > rhs) |
Auto_Functor< X, Functor > & | operator= (Auto_Functor_Ref< X, Functor > rhs) |
template<typename Y > |
| operator Auto_Functor_Ref< Y, Functor > () |
template<typename Y > |
| operator Auto_Functor< Y, Functor > () |
Private Attributes |
X * | p_ |
Functor | f_ |
Detailed Description
template<typename X, typename Functor>
class ACE_Utils::Auto_Functor< X, Functor >
Helper template to implement auto_ptr<>-like classes, but executing a functor in the destructor, instead of always deleting things.
The functor is called in the destructor, and it must implement:
Functor() throw();
Functor(Functor const &) throw();
Functor & operator=(Functor const &) throw();
void operator()(X * p) throw();
Member Typedef Documentation
template<typename X , typename Functor >
template<typename X , typename Functor >
Constructor & Destructor Documentation
template<typename X , typename Functor >
template<typename X , typename Functor >
template<typename X , typename Functor >
template<typename Y >
template<typename X , typename Functor >
template<typename X , typename Functor >
Member Function Documentation
template<typename X , typename Functor >
template<typename X , typename Functor >
template<typename X , typename Functor >
template<typename Y >
template<typename X , typename Functor >
template<typename Y >
template<typename X , typename Functor >
template<typename X , typename Functor >
template<typename X , typename Functor >
template<typename X , typename Functor >
template<typename Y >
template<typename X , typename Functor >
template<typename X , typename Functor >
template<typename X , typename Functor >
template<typename X , typename Functor >
Member Data Documentation
template<typename X , typename Functor >
template<typename X , typename Functor >
The documentation for this class was generated from the following files: