mcrl2::utilities::block_allocator

Include file:

#include "mcrl2/utilities/block_allocator.h
class mcrl2::utilities::block_allocator

The block allocator provides the allocator interface for the memory pool class. As such is can be used as an allocator for allocator aware storages.

Also provides several non-standard allocate functions specifically for the term pool.

Private types

type mcrl2::utilities::block_allocator::super

typedef for memory_pool< T, ElementsPerBlock, ThreadSafe >

Public types

type mcrl2::utilities::block_allocator::difference_type

typedef for std::ptrdiff_t

type mcrl2::utilities::block_allocator::size_type

typedef for std::size_t

type mcrl2::utilities::block_allocator::value_type

typedef for T

Public member functions

T *allocate(size_type n, const void *hint = nullptr)

The unused parameter is to make the interface equivalent to the allocator.

block_allocator() = default
block_allocator(block_allocator&&) = default
void deallocate(T *p, size_type)

The unused parameter is to make the interface equivalent to the allocator.

block_allocator &operator=(block_allocator&&) = default