FastLED 3.9.15
|
Definition at line 521 of file allocator.h.
#include <allocator.h>
Classes | |
struct | InlinedStorage |
struct | rebind |
Public Types | |
using | const_pointer = const T* |
using | const_reference = const T& |
using | difference_type = ptrdiff_t |
using | pointer = T* |
using | reference = T& |
using | size_type = fl::size |
using | value_type = T |
Public Member Functions | |
allocator_inlined () noexcept=default | |
allocator_inlined (const allocator_inlined &other) noexcept | |
template<typename U> | |
allocator_inlined (const allocator_inlined< U, N, typename BaseAllocator::template rebind< U >::other > &other) noexcept | |
~allocator_inlined () noexcept | |
T * | allocate (fl::size n) |
void | clear () |
template<typename U, typename... Args> | |
void | construct (U *p, Args &&... args) |
void | deallocate (T *p, fl::size n) |
template<typename U> | |
void | destroy (U *p) |
fl::size | inlined_capacity () const |
bool | is_using_inlined () const |
allocator_inlined & | operator= (const allocator_inlined &other) noexcept |
fl::size | total_size () const |
Private Types | |
using | has_cleanup = decltype(has_cleanup_impl<BaseAllocator>(0)) |
Private Member Functions | |
void | cleanup_base_allocator () |
void | cleanup_base_allocator_impl (fl::false_type) |
void | cleanup_base_allocator_impl (fl::true_type) |
T * | get_inlined_ptr () |
const T * | get_inlined_ptr () const |
bool | operator!= (const allocator_inlined &other) const noexcept |
bool | operator== (const allocator_inlined &other) const noexcept |
Static Private Member Functions | |
template<typename U> | |
static fl::false_type | has_cleanup_impl (...) |
template<typename U> | |
static auto | has_cleanup_impl (int) -> decltype(fl::declval< U >().cleanup(), fl::true_type{}) |
Private Attributes | |
fl::size | m_active_allocations = 0 |
BaseAllocator | m_base_allocator |
fl::bitset_fixed< N > | m_free_bits |
InlinedStorage | m_inlined_storage |
fl::size | m_inlined_used = 0 |