proxygen
|
#include <Memory.h>
Public Types | |
using | value_type = T |
using | propagate_on_container_copy_assignment = std::true_type |
using | propagate_on_container_move_assignment = std::true_type |
using | propagate_on_container_swap = std::true_type |
Public Member Functions | |
template<typename S = Align, _t< std::enable_if< std::is_default_constructible< S >::value, int >> = 0> | |
constexpr | AlignedSysAllocator () noexcept(noexcept(Align())) |
template<typename U > | |
constexpr | AlignedSysAllocator (AlignedSysAllocator< U, Align > const &other) noexcept |
T * | allocate (size_t count) |
void | deallocate (T *p, size_t) |
Private Types | |
using | Self = AlignedSysAllocator< T, Align > |
Private Member Functions | |
constexpr Align const & | align () const |
Friends | |
template<typename , typename > | |
class | AlignedSysAllocator |
bool | operator== (Self const &a, Self const &b) noexcept |
bool | operator!= (Self const &a, Self const &b) noexcept |
Resembles std::allocator, the default Allocator, but wraps aligned_malloc and aligned_free.
Accepts a policy parameter for providing the alignment, which must:
DefaultAlign and FixedAlign<std::size_t>, provided above, are valid policies.
using folly::AlignedSysAllocator< T, Align >::propagate_on_container_copy_assignment = std::true_type |
using folly::AlignedSysAllocator< T, Align >::propagate_on_container_move_assignment = std::true_type |
using folly::AlignedSysAllocator< T, Align >::propagate_on_container_swap = std::true_type |
|
private |
using folly::AlignedSysAllocator< T, Align >::value_type = T |
|
inlinenoexcept |
|
inlineexplicitnoexcept |
|
inlineprivate |
|
inline |
Definition at line 487 of file Memory.h.
References folly::aligned_malloc(), FOLLY_UNLIKELY, and folly::T.
|
inline |
|
friend |
|
friend |
|
friend |