|
void * | Allocate (size_t Size, size_t Alignment) |
| Allocate Size bytes of Alignment aligned memory. More...
|
|
void | Deallocate (const void *Ptr, size_t Size, size_t Alignment) |
| Deallocate Ptr to Size bytes of memory allocated by this allocator. More...
|
|
template<typename T > |
T * | Allocate (size_t Num=1) |
| Allocate space for a sequence of objects without constructing them. More...
|
|
template<typename T > |
std::enable_if_t<!std::is_same< std::remove_cv_t< T >, void >::value, void > | Deallocate (T *Ptr, size_t Num=1) |
| Deallocate space for a sequence of objects without constructing them. More...
|
|
template<typename DerivedT>
class wpi::AllocatorBase< DerivedT >
CRTP base class providing obvious overloads for the core Allocate()
methods of LLVM-style allocators.
This base class both documents the full public interface exposed by all LLVM-style allocators, and redirects all of the overloads to a single core set of methods which the derived class must define.