|
xrpld
|
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 ()=default | |
| 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 *pIn) const noexcept |
| Determines whether the given pointer belongs to this allocator. | |
| std::uint8_t * | allocate () noexcept |
| void | deallocate (std::uint8_t *ptr) noexcept |
| Return an item to this allocator's freelist. | |
Public Attributes | |
| std::mutex | m |
| std::uint8_t * | l = nullptr |
| SlabBlock * | next |
| std::uint8_t const *const | p = nullptr |
| std::size_t const | size |
A block of memory that is owned by a slab allocator.
Definition at line 36 of file SlabAllocator.h.
| xrpl::SlabAllocator< Type >::SlabBlock::SlabBlock | ( | SlabBlock * | next, |
| std::uint8_t * | data, | ||
| std::size_t | size, | ||
| std::size_t | item ) |
Definition at line 53 of file SlabAllocator.h.
|
default |
|
delete |
|
delete |
|
delete |
|
delete |
|
noexcept |
Determines whether the given pointer belongs to this allocator.
Definition at line 84 of file SlabAllocator.h.
|
noexcept |
Definition at line 90 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 119 of file SlabAllocator.h.
| std::mutex xrpl::SlabAllocator< Type >::SlabBlock::m |
Definition at line 39 of file SlabAllocator.h.
| std::uint8_t* xrpl::SlabAllocator< Type >::SlabBlock::l = nullptr |
Definition at line 42 of file SlabAllocator.h.
| SlabBlock* xrpl::SlabAllocator< Type >::SlabBlock::next |
Definition at line 45 of file SlabAllocator.h.
| std::uint8_t const* const xrpl::SlabAllocator< Type >::SlabBlock::p = nullptr |
Definition at line 48 of file SlabAllocator.h.
| std::size_t const xrpl::SlabAllocator< Type >::SlabBlock::size |
Definition at line 51 of file SlabAllocator.h.