PMDK C++ bindings
1.13.0-git107.g7e59f08f
This is the C++ bindings documentation for PMDK's libpmemobj.
|
The allocation policy template for a given type. More...
#include <libpmemobj++/allocator.hpp>
Classes | |
struct | rebind |
Rebind to a different type. More... | |
Public Types | |
using | value_type = T |
using | pointer = persistent_ptr< value_type > |
using | const_void_pointer = persistent_ptr< const void > |
using | size_type = std::size_t |
using | bool_type = bool |
Public Member Functions | |
standard_alloc_policy ()=default | |
Defaulted constructor. | |
~standard_alloc_policy ()=default | |
Defaulted destructor. | |
standard_alloc_policy (standard_alloc_policy const &) | |
Explicit copy constructor. | |
template<typename U , typename = typename std::enable_if< std::is_convertible<U *, T *>::value>::type> | |
standard_alloc_policy (standard_alloc_policy< U > const &) | |
Type converting constructor. | |
pointer | allocate (size_type cnt, const_void_pointer=0) |
Allocate storage for cnt objects of type T. More... | |
void | deallocate (pointer p, size_type=0) |
Deallocates storage pointed to p, which must be a value returned by a previous call to allocate that has not been invalidated by an intervening call to deallocate. More... | |
size_type | max_size () const |
The largest value that can meaningfully be passed to allocate(). More... | |
Related Functions | |
(Note that these are not member functions.) | |
template<typename T , typename T2 > | |
bool | operator== (standard_alloc_policy< T > const &, standard_alloc_policy< T2 > const &) |
Determines if memory from another allocator can be deallocated from this one. More... | |
template<typename T , typename OtherAllocator > | |
bool | operator== (standard_alloc_policy< T > const &, OtherAllocator const &) |
Determines if memory from another allocator can be deallocated from this one. More... | |
The allocation policy template for a given type.
Can be specialized, if necessary, for a given type. Designed to be used with C++ allocators.
|
inline |
Allocate storage for cnt objects of type T.
Does not construct the objects.
[in] | cnt | the number of objects to allocate memory for. |
transaction_scope_error | if called outside of an active transaction. |
transaction_out_of_memory | if there is no free memory of requested size. |
transaction_alloc_error | on transactional allocation failure. |
|
inline |
Deallocates storage pointed to p, which must be a value returned by a previous call to allocate that has not been invalidated by an intervening call to deallocate.
[in] | p | pointer to the memory to be deallocated. |
transaction_scope_error | if called outside of an active transaction. |
transaction_free_error | on transactional free failure. |
|
inline |
The largest value that can meaningfully be passed to allocate().
|
related |
Determines if memory from another allocator can be deallocated from this one.
|
related |
Determines if memory from another allocator can be deallocated from this one.