rippled
|
A block of memory that is owned by a slab allocator. More...
Public Member Functions | |
SlabBlock (SlabBlock *next, std::uint8_t *data, std::size_t size, std::size_t item) | |
~SlabBlock () | |
SlabBlock (SlabBlock const &other)=delete | |
SlabBlock & | operator= (SlabBlock const &other)=delete |
SlabBlock (SlabBlock &&other)=delete | |
SlabBlock & | operator= (SlabBlock &&other)=delete |
bool | own (std::uint8_t const *p) const noexcept |
Determines whether the given pointer belongs to this allocator. More... | |
std::uint8_t * | allocate () noexcept |
void | deallocate (std::uint8_t *ptr) noexcept |
Return an item to this allocator's freelist. More... | |
Public Attributes | |
std::mutex | m_ |
std::uint8_t * | l_ = nullptr |
SlabBlock * | next_ |
std::uint8_t const *const | p_ = nullptr |
const std::size_t | size_ |
A block of memory that is owned by a slab allocator.
Definition at line 52 of file SlabAllocator.h.
ripple::SlabAllocator< Type >::SlabBlock::SlabBlock | ( | SlabBlock * | next, |
std::uint8_t * | data, | ||
std::size_t | size, | ||
std::size_t | item | ||
) |
Definition at line 69 of file SlabAllocator.h.
ripple::SlabAllocator< Type >::SlabBlock::~SlabBlock | ( | ) |
Definition at line 89 of file SlabAllocator.h.
|
delete |
|
delete |
|
delete |
|
delete |
|
noexcept |
Determines whether the given pointer belongs to this allocator.
Definition at line 106 of file SlabAllocator.h.
|
noexcept |
Definition at line 112 of file SlabAllocator.h.
|
noexcept |
Return an item to this allocator's freelist.
ptr | The pointer to the chunk of memory being deallocated. |
Definition at line 142 of file SlabAllocator.h.
std::mutex ripple::SlabAllocator< Type >::SlabBlock::m_ |
Definition at line 55 of file SlabAllocator.h.
std::uint8_t* ripple::SlabAllocator< Type >::SlabBlock::l_ = nullptr |
Definition at line 58 of file SlabAllocator.h.
SlabBlock* ripple::SlabAllocator< Type >::SlabBlock::next_ |
Definition at line 61 of file SlabAllocator.h.
std::uint8_t const* const ripple::SlabAllocator< Type >::SlabBlock::p_ = nullptr |
Definition at line 64 of file SlabAllocator.h.
const std::size_t ripple::SlabAllocator< Type >::SlabBlock::size_ |
Definition at line 67 of file SlabAllocator.h.