Specialization of the allocator_traits for memory_pool classes.
More...
#include <wpi/memory/memory_pool.hpp>
|
static void * | allocate_node (allocator_type &state, std::size_t size, std::size_t alignment) |
|
static void * | allocate_array (allocator_type &state, std::size_t count, std::size_t size, std::size_t alignment) |
|
static void | deallocate_node (allocator_type &state, void *node, std::size_t size, std::size_t) noexcept |
|
static void | deallocate_array (allocator_type &state, void *array, std::size_t count, std::size_t size, std::size_t) noexcept |
|
static std::size_t | max_node_size (const allocator_type &state) noexcept |
|
static std::size_t | max_array_size (const allocator_type &state) noexcept |
|
static std::size_t | max_alignment (const allocator_type &state) noexcept |
|
template<typename PoolType, class ImplRawAllocator>
class wpi::memory::allocator_traits< memory_pool< PoolType, ImplRawAllocator > >
Specialization of the allocator_traits for memory_pool classes.
- Note
- It is not allowed to mix calls through the specialization and through the member functions, i.e. memory_pool::allocate_node() and this
allocate_node()
.
◆ allocator_type
template<typename PoolType , class ImplRawAllocator >
◆ is_stateful
template<typename PoolType , class ImplRawAllocator >
◆ allocate_array()
template<typename PoolType , class ImplRawAllocator >
- Effects:
- Forwards to memory_pool::allocate_array() with the number of nodes adjusted to be the minimum, i.e. when the
size
is less than the memory_pool::node_size().
- Returns:
- A array with specified properties.
- Requires:
- The memory_pool has to support array allocations.
- Throws:
- Anything thrown by the pool allocation function.
◆ allocate_node()
template<typename PoolType , class ImplRawAllocator >
◆ deallocate_array()
template<typename PoolType , class ImplRawAllocator >
◆ deallocate_node()
template<typename PoolType , class ImplRawAllocator >
◆ max_alignment()
template<typename PoolType , class ImplRawAllocator >
- Returns:
- The maximum alignment which is the next bigger power of two if less than
alignof(std::max_align_t)
or the maximum alignment itself otherwise.
◆ max_array_size()
template<typename PoolType , class ImplRawAllocator >
◆ max_node_size()
template<typename PoolType , class ImplRawAllocator >
The documentation for this class was generated from the following file: