▼Nktl | |
▼Ndetail | |
Cfallback_builder | |
Cfallback_builder< R, std::tuple< Alloc > > | |
Cfallback_builder< R, std::tuple< Ts... > > | |
Csegragator_builder | |
Csegragator_builder< R, std::tuple< Alloc > > | |
Csegragator_builder< R, std::tuple< Ts... > > | |
Cpow2 | |
Ctuple_split_indices | |
Ctuple_split_indices< O, std::index_sequence< N... >, std::index_sequence< M... >, std::tuple< T... > > | |
Csize_invert | |
Csize_invert< false, N, M > | |
Csize_invert< true, N, M > | |
Chas_no_value_type | |
Chas_no_value_type< Alloc, std::void_t< typename Alloc::value_type > > | |
Cget_size_type | |
Cget_size_type< Alloc, std::void_t< typename Alloc::size_type > > | |
Chas_construct | |
Chas_construct< std::void_t< decltype(std::declval< Alloc & >().construct(std::declval< Args >()...))>, Alloc, Args... > | |
Chas_destroy | |
Chas_destroy< Alloc, Ptr, std::void_t< decltype(std::declval< Alloc & >().destroy(std::declval< Ptr >()))> > | |
Chas_max_size | |
Chas_max_size< Alloc, std::void_t< decltype(std::declval< Alloc & >().max_size())> > | |
Chas_owns | |
Chas_owns< Alloc, std::void_t< decltype(std::declval< Alloc & >().owns(std::declval< void * >()))> > | |
Chas_nothrow_construct | |
Chas_nothrow_construct< std::enable_if_t< has_construct_v< Alloc, Args... > >, Alloc, Args... > | |
Chas_nothrow_destroy | |
Chas_nothrow_destroy< Alloc, Ptr, std::enable_if_t< has_destroy_v< Alloc, Ptr > > > | |
Chas_nothrow_max_size | |
Chas_nothrow_max_size< Alloc, std::enable_if_t< has_max_size_v< Alloc > > > | |
Chas_nothrow_owns | |
Chas_nothrow_owns< Alloc, std::enable_if_t< has_owns_v< Alloc > > > | |
Ccascading | An allocator which owns multiple instances of a given sub allocator. When allocating it will attempt to use the first available allocator. Upon failure it will instead create a new instance and allocate from it |
Cfallback | An allocator which delegates allocations between 2 different allocators. It first attempts to allocate with the primary allocator, but upon failure will use the fallback allocator |
▼Ctype_allocator | Wrapper class for making an untyped allocator into a typed allocator |
Crebind | |
Cfreelist | An allocator which allocates using its underlying allocator. Only allocates if the requested size is within the Min and Max range When deallocating it chains the memory in a linked list, which can then be reused |
Cglobal | |
Clinear_allocator | A linear allocator which gives out chunks of its internal stack. Increments a counter during allocation, which makes it very fast but also unlikely to deallocate it again. Has a max allocation size of the Size given |
Cmallocator | An allocator which uses an aligned malloc for allocation |
Cnull_allocator | An allocator which does nothing. Useful for debugging composite allocators, like ensuring a specific path in a composite allocator is not used |
Coverflow | |
Creference | |
Csegragator | An allocator which delegates allocations between 2 different allocators based on a size threshold |
Cnotomic | |
Cshared | |
Cstack | A stack object of a given Size |
Cstack_allocator | A linear allocator which gives out chunks of its allocated stack. Increments a counter during allocation, which makes it very fast but also unlikely to deallocate it again. Has a max allocation size of the Size given |
Cthreaded | |
Cbinary_heap | A priority queue implemented as a binary heap |
Cpacked_ptr | A packed pointer-like type which takes advantage of any bits that don't get used due to alignment |
Ctrivial_array | A dynamically alloacted array of trivial types |
Ctrivial_buffer | |
Ctrivial_vector | A dynamically allocated vector or trivial types |