LLVM 22.0.0git
|
A BumpPtrAllocator that allows only elements of a specific type to be allocated. More...
#include "llvm/Support/Allocator.h"
Public Member Functions | |
SpecificBumpPtrAllocator () | |
SpecificBumpPtrAllocator (SpecificBumpPtrAllocator &&Old) | |
~SpecificBumpPtrAllocator () | |
SpecificBumpPtrAllocator & | operator= (SpecificBumpPtrAllocator &&RHS) |
void | DestroyAll () |
Call the destructor of each allocated object and deallocate all but the current slab and reset the current pointer to the beginning of it, freeing all memory allocated so far. | |
T * | Allocate (size_t num=1) |
Allocate space for an array of objects without constructing them. | |
std::optional< int64_t > | identifyObject (const void *Ptr) |
A BumpPtrAllocator that allows only elements of a specific type to be allocated.
This allows calling the destructor in DestroyAll() and when the allocator is destroyed.
Definition at line 390 of file Allocator.h.
|
inline |
Definition at line 394 of file Allocator.h.
Referenced by operator=(), and SpecificBumpPtrAllocator().
|
inline |
Definition at line 399 of file Allocator.h.
References llvm::move(), and SpecificBumpPtrAllocator().
|
inline |
Definition at line 401 of file Allocator.h.
References DestroyAll().
|
inline |
Allocate space for an array of objects without constructing them.
Definition at line 440 of file Allocator.h.
References T.
|
inline |
Call the destructor of each allocated object and deallocate all but the current slab and reset the current pointer to the beginning of it, freeing all memory allocated so far.
Definition at line 411 of file Allocator.h.
References llvm::alignAddr(), assert(), E(), I, llvm::Align::Of(), Ptr, Size, and T.
Referenced by ~SpecificBumpPtrAllocator().
|
inline |
Ptr
in the given allocator. Returns an empty optional if the pointer is not found in the allocator. Definition at line 445 of file Allocator.h.
References Ptr.
|
inline |
Definition at line 403 of file Allocator.h.
References RHS, and SpecificBumpPtrAllocator().