MADNESS
0.10.1
|
Base class for Stack which implements basic memory operations for non-POD objects. More...
#include <stack.h>
Static Protected Member Functions | |
static void | destroy (T *first, T *last) |
Destroy a range of non-POD objects. More... | |
static void | destroy (T *ptr) |
Destroy a non-POD object. More... | |
static void | uninitialized_copy (T *first, T *last, T *dest) |
Copy a range of POD objects. More... | |
static void | uninitialized_move (T *first, T *last, T *dest) |
Move a range of POD objects. More... | |
Base class for Stack which implements basic memory operations for non-POD objects.
T | The data type of the stack. |
isPod | An auxiliary template parameter to select the POD/non-POD versions of this class. |
|
inlinestaticprotected |
Destroy a range of non-POD objects.
[in] | first | The beginning of the range to be destroyed. |
[in] | last | The end of the range to be destroyed. |
References madness::detail::StackBase< T, isPod >::destroy().
|
inlinestaticprotected |
Destroy a non-POD object.
[in] | ptr | A pointer to the object to be destroyed. |
Referenced by madness::detail::StackBase< T, isPod >::destroy(), and madness::detail::StackBase< T, isPod >::uninitialized_move().
|
inlinestaticprotected |
Copy a range of POD objects.
[in] | first | The beginning of the range to be copied. |
[in] | last | The end of the range to be copied. |
[in] | dest | Pointer to the uninitialized memory range. |
|
inlinestaticprotected |
Move a range of POD objects.
[in] | first | The beginning of the range to be moved. |
[in] | last | The end of the range to be moved. |
[in] | dest | Pointer to the uninitialized memory range. |
References madness::detail::StackBase< T, isPod >::destroy(), and T().