#include <zorba/internal/unique_ptr.h>

Public Types | |
| typedef D | deleter_type |
| typedef T | element_type |
| typedef T * | pointer |
Public Member Functions | |
| pointer | get () const throw () |
| Gets the pointer. More... | |
| deleter_reference | get_deleter () throw () |
| Gets the deleter in use. More... | |
| deleter_const_reference | get_deleter () const throw () |
| Gets the deleter in use. More... | |
| operator explicit_bool::type () const throw () | |
Conversion to bool. More... | |
| element_type & | operator* () const throw () |
| Dereferences the pointer. More... | |
| pointer | operator-> () const throw () |
| Gets the pointer. More... | |
| operator::zorba::internal::rv () throw () | |
| operator::zorba::internal::rv () const throw () | |
| unique_ptr & | operator= (zorba::internal::rv< unique_ptr > &p) |
| Destructive assignment: moves ownership of the object pointed-to by p to this unique_ptr. More... | |
| template<typename U , typename E > | |
| unique_ptr & | operator= (zorba::internal::rv< unique_ptr< U, E > > &p) |
| Destructive assignment: moves ownership of the object pointed-to by p to this unique_ptr. More... | |
| unique_ptr & | operator= (int) |
Assignment from null: equivalent to reset(). More... | |
| pointer | release () throw () |
| Releases ownership of the pointed-to object. More... | |
| void | reset (pointer p=0) throw () |
| Sets the pointer to the given value or null if none. More... | |
| void | swap (unique_ptr &p) |
| Swaps the pointer and deleter with that of another unique_ptr. More... | |
| unique_ptr (pointer p=0) throw () | |
| Default constructor. More... | |
| unique_ptr (pointer p, deleter_reference d) | |
| Constructs a unique_ptr using a specific deleter. More... | |
| unique_ptr (zorba::internal::rv< unique_ptr > &p) | |
| Constructs a unique_ptr from an existing unique_ptr. More... | |
| template<typename U , typename E > | |
| unique_ptr (zorba::internal::rv< unique_ptr< U, E > > &p, typename enable_if< ZORBA_TR1_NS::is_convertible< typename unique_ptr< U >::pointer, pointer >::value &&ZORBA_TR1_NS::is_convertible< E, D >::value &&(!ZORBA_TR1_NS::is_reference< D >::value||ZORBA_TR1_NS::is_same< D, E >::value) >::type *=0) | |
| Constructs a unique_ptr from an existing unique_ptr. More... | |
| ~unique_ptr () | |
| Destroys the pointed-to object by calling the deleter (if the pointer is not null). More... | |
Definition at line 202 of file unique_ptr.h.
| typedef D std::unique_ptr< T, D >::deleter_type |
Definition at line 214 of file unique_ptr.h.
| typedef T std::unique_ptr< T, D >::element_type |
Definition at line 212 of file unique_ptr.h.
| typedef T* std::unique_ptr< T, D >::pointer |
Definition at line 213 of file unique_ptr.h.
|
inlineexplicit |
Default constructor.
| p | A pointer to the object to point to, if any. |
Definition at line 221 of file unique_ptr.h.
|
inline |
Constructs a unique_ptr using a specific deleter.
This unique_ptr now has ownership of the pointed-to object.
| p | A pointer to the object to own. |
| d | The deleter to use. |
Definition at line 231 of file unique_ptr.h.
|
inline |
Constructs a unique_ptr from an existing unique_ptr.
Note that:
Instead, you must use the move() function:
| p | The unique_ptr to move from. |
Definition at line 248 of file unique_ptr.h.
|
inline |
Constructs a unique_ptr from an existing unique_ptr.
| U | The pointed-to type such that U* is convertible to T*. |
| E | The deleter such that E is convertible to D. |
| p | The unique_ptr to move from. |
Definition at line 261 of file unique_ptr.h.
|
inline |
Destroys the pointed-to object by calling the deleter (if the pointer is not null).
Definition at line 279 of file unique_ptr.h.
|
inline |
|
inline |
|
inline |
|
inline |
Conversion to bool.
true only if the pointer is not null; false only if the pointer is null. Definition at line 410 of file unique_ptr.h.
|
inline |
Dereferences the pointer.
Definition at line 329 of file unique_ptr.h.
|
inline |
|
inline |
Definition at line 429 of file unique_ptr.h.
|
inline |
Definition at line 433 of file unique_ptr.h.
|
inline |
Destructive assignment: moves ownership of the object pointed-to by p to this unique_ptr.
The object pointed-to by this unique_ptr, if any, is deleted.
| p | The unique_ptr to move from. |
*this. Definition at line 291 of file unique_ptr.h.
|
inline |
Destructive assignment: moves ownership of the object pointed-to by p to this unique_ptr.
The object pointed-to by this unique_ptr, if any, is deleted.
| U | The pointed-to type such that U* is convertible to T*. |
| E | The deleter of p. |
| p | The unique_ptr to move from. |
*this. Definition at line 308 of file unique_ptr.h.
|
inline |
Assignment from null: equivalent to reset().
*this. Definition at line 319 of file unique_ptr.h.
|
inline |
Releases ownership of the pointed-to object.
Said object will now be the responsibility of the caller.
Definition at line 375 of file unique_ptr.h.
|
inline |
Sets the pointer to the given value or null if none.
The previosly pointed-to object, if any, is deleted. However, if p equals the current pointer value, then this function does nothing.
| p | The new pointer value, if any. |
Definition at line 388 of file unique_ptr.h.
Referenced by std::unique_ptr< zorba::internal::ztd::proxy >::operator=().
|
inline |
Swaps the pointer and deleter with that of another unique_ptr.
| p | The unique_ptr to swap with. |
Definition at line 400 of file unique_ptr.h.
Referenced by std::swap().