|
memory
|
Wraps a RawAllocator and makes it a "normal" Allocator.
It allows using a RawAllocator anywhere a Allocator is required.
Typedefs | |
| using | value_type = T |
| using | pointer = T * |
| using | const_pointer = const T * |
| using | reference = T & |
| using | const_reference = const T & |
| using | size_type = std::size_t |
| using | difference_type = std::ptrdiff_t |
| using | propagate_on_container_swap = typename prop_traits::propagate_on_container_swap |
| using | propagate_on_container_move_assignment = typename prop_traits::propagate_on_container_move_assignment |
| using | propagate_on_container_copy_assignment = typename prop_traits::propagate_on_container_copy_assignment |
| using | allocator_type = typename alloc_reference::allocator_type |
Related Symbols | |
| template<typename T , typename U , class Impl > | |
| bool | operator== (const std_allocator< T, Impl > &lhs, const std_allocator< U, Impl > &rhs) noexcept |
| template<typename T , typename U , class Impl > | |
| bool | operator!= (const std_allocator< T, Impl > &lhs, const std_allocator< U, Impl > &rhs) noexcept |
| template<typename T , class RawAllocator > | |
| auto | make_std_allocator (RawAllocator &&allocator) noexcept -> std_allocator< T, typename std::decay< RawAllocator >::type > |
|
noexcept |
RawAllocator inside the reference. RawAllocator type is stateless, otherwise the body of this function will not compile.
|
noexcept |
RawAllocator. It will store an allocator_reference to it. allocator_reference<RawAllocator>(alloc) is well-formed, that is either RawAlloc is the same as RawAllocator or RawAllocator is the tag type any_allocator. If the requirement is not fulfilled this function does not participate in overload resolution. RawAllocator is at least as long as the lifetime of this std_allocator object.
|
noexcept |
RawAllocator object. It will not store a reference but create it on the fly. RawAllocator is stateless and the expression allocator_reference<RawAllocator>(alloc) is well-formed as above, otherwise this function does not participate in overload resolution.
|
noexcept |
|
delete |
Implicit conversion from any other allocator_storage is forbidden to prevent accidentally wrapping another allocator_storage inside a allocator_reference.
|
noexcept |
Allcoator concept and simply takes the same allocator_reference.
|
noexcept |
Allcoator concept and simply takes the same allocator_reference. | std_allocator< T, RawAllocator > select_on_container_copy_construction | ( | ) | const |
Allocator concept and forwards to the propagation_traits. n is 1, it will call allocate_node(sizeof(T), alignof(T)), otherwise allocate_array(n, sizeof(T), alignof(T)). n objects of type T. RawAllocator.
|
noexcept |
n on this object or any copy of it. U at given address using the passed arguments. U at given address.
|
noexcept |
max_array_size() / sizeof(value_type). This is only an upper bound, not the exact maximum.
|
noexcept |
const) reference to the stored allocator. For stateless allocators: A temporary constructed allocator.
|
noexcept |
const) reference to the stored allocator. For stateless allocators: A temporary constructed allocator.
|
related |
|
related |
|
related |
1.9.8