|
ACE 6.0.3
|
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>
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_ |
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();
| typedef X ACE_Utils::Auto_Functor< X, Functor >::element_type |
| typedef Functor ACE_Utils::Auto_Functor< X, Functor >::functor_type |
| ACE_Utils::Auto_Functor< X, Functor >::Auto_Functor | ( | X * | p = 0, |
| Functor | functor = Functor() |
||
| ) | [inline, explicit] |
Constructor.
| ACE_Utils::Auto_Functor< X, Functor >::Auto_Functor | ( | Auto_Functor< X, Functor > & | rhs | ) | [inline] |
| ACE_Utils::Auto_Functor< X, Functor >::Auto_Functor | ( | Auto_Functor< Y, Functor > & | rhs | ) | [inline] |
| ACE_Utils::Auto_Functor< X, Functor >::~Auto_Functor | ( | ) |
| ACE_Utils::Auto_Functor< X, Functor >::Auto_Functor | ( | Auto_Functor_Ref< X, Functor > | rhs | ) | [inline] |
| Functor const & ACE_Utils::Auto_Functor< X, Functor >::functor | ( | ) | const [inline] |
| X * ACE_Utils::Auto_Functor< X, Functor >::get | ( | ) | [inline] |
| ACE_Utils::Auto_Functor< X, Functor >::operator Auto_Functor< Y, Functor > | ( | ) |
| ACE_Utils::Auto_Functor< X, Functor >::operator Auto_Functor_Ref< Y, Functor > | ( | ) |
| X & ACE_Utils::Auto_Functor< X, Functor >::operator* | ( | ) | const [inline] |
| X * ACE_Utils::Auto_Functor< X, Functor >::operator-> | ( | ) | const [inline] |
| ACE_Utils::Auto_Functor< X, Functor > & ACE_Utils::Auto_Functor< X, Functor >::operator= | ( | Auto_Functor_Ref< X, Functor > | rhs | ) | [inline] |
| ACE_Utils::Auto_Functor< X, Functor > & ACE_Utils::Auto_Functor< X, Functor >::operator= | ( | Auto_Functor< Y, Functor > & | rhs | ) | [inline] |
| ACE_Utils::Auto_Functor< X, Functor > & ACE_Utils::Auto_Functor< X, Functor >::operator= | ( | Auto_Functor< X, Functor > & | rhs | ) | [inline] |
| X * ACE_Utils::Auto_Functor< X, Functor >::release | ( | ) | [inline] |
| void ACE_Utils::Auto_Functor< X, Functor >::reset | ( | X * | p = 0 | ) |
| void ACE_Utils::Auto_Functor< X, Functor >::reset | ( | X * | p, |
| Functor | f | ||
| ) |
Functor ACE_Utils::Auto_Functor< X, Functor >::f_ [private] |
X* ACE_Utils::Auto_Functor< X, Functor >::p_ [private] |
1.7.4