Kicking it Olde Sküül! Burgerlib on Github Follow Olde Sküül on Twitter Burgerbecky on LinkedIn Burgerbecky on LinkedIn
Loading...
Searching...
No Matches
Burger::allocator< const void > Class Reference

Implementation of std::allocator<void> More...

Inheritance diagram for Burger::allocator< const void >:
Collaboration diagram for Burger::allocator< const void >:

Classes

struct  rebind
 Its member type other is the equivalent allocator type to allocate elements of type T More...

Public Types

typedef const void value_type
 Type is hard coded to const void.
typedef const void * pointer
 Pointer to nothing.
typedef const void * const_pointer
 Const pointer to nothing.
typedef uintptr_t size_type
 Quantities of elements.
typedef intptr_t difference_type
 Difference between pointers.
typedef const void & reference
 Reference to element.
typedef const const void & const_reference
 Reference to constant element.
typedef true_type propagate_on_container_move_assignment
 Propagate on move assignment.
typedef true_type propagate_on_container_copy_assignment
 Copy the allocator when copy assigned.
typedef true_type propagate_on_container_swap
 Swap allocators on swap assignment.
typedef true_type is_always_equal
 This allocator matches any other allocator type.

Public Member Functions

constexpr allocator () noexcept=default
 Default constructor.
 ~allocator ()=default
 Default destructor.
allocatoroperator= (allocator &&) noexcept=default
 Assignment move constructor.
pointer address (reference x) noexcept
 Returns the address of x.
const void * allocate (uintptr_t n) noexcept
 Allocate memory for n chunks of data.
void deallocate (pointer p, size_type) noexcept
 Free memory allocated.
uintptr_t max_size () const noexcept
 Maximum size possible to allocate.
void construct (pointer p)
 Default constructs an object.
void destroy (pointer p)
 Destroys the contents of an object.

Detailed Description

Implementation of std::allocator<void>


Special type of allocator that has no ability to allocate or free any memory.

See also
allocator<void>, or allocator

Member Typedef Documentation

◆ const_pointer

typedef const void* Burger::allocator< const void >::const_pointer

Const pointer to nothing.

◆ const_reference

typedef const const void& Burger::allocator< const void >::const_reference

Reference to constant element.

◆ difference_type

typedef intptr_t Burger::allocator< const void >::difference_type

Difference between pointers.

◆ is_always_equal

typedef true_type Burger::allocator< const void >::is_always_equal

This allocator matches any other allocator type.

◆ pointer

typedef const void* Burger::allocator< const void >::pointer

Pointer to nothing.

◆ propagate_on_container_copy_assignment

typedef true_type Burger::allocator< const void >::propagate_on_container_copy_assignment

Copy the allocator when copy assigned.

◆ propagate_on_container_move_assignment

typedef true_type Burger::allocator< const void >::propagate_on_container_move_assignment

Propagate on move assignment.

◆ propagate_on_container_swap

typedef true_type Burger::allocator< const void >::propagate_on_container_swap

Swap allocators on swap assignment.

◆ reference

typedef const void& Burger::allocator< const void >::reference

Reference to element.

◆ size_type

typedef uintptr_t Burger::allocator< const void >::size_type

Quantities of elements.

◆ value_type

typedef const void Burger::allocator< const void >::value_type

Type is hard coded to const void.

Constructor & Destructor Documentation

◆ allocator()

Burger::allocator< const void >::allocator ( )
constexprdefaultnoexcept

Default constructor.

◆ ~allocator()

Burger::allocator< const void >::~allocator ( )
default

Default destructor.

Member Function Documentation

◆ address()

pointer Burger::allocator< const void >::address ( reference x)
inlinenoexcept

Returns the address of x.

◆ allocate()

const void * Burger::allocator< const void >::allocate ( uintptr_t n)
inlinenoexcept

Allocate memory for n chunks of data.


Parameters
nNumber of elements to allocate
Returns
Pointer to allocated memory or nullptr on failure.
See also
deallocate(pointer, size_type)

◆ construct()

void Burger::allocator< const void >::construct ( pointer p)
inline

Default constructs an object.

◆ deallocate()

void Burger::allocator< const void >::deallocate ( pointer p,
size_type  )
inlinenoexcept

Free memory allocated.


Note
The second parameter is ignored in this allocator
Parameters
pPointer to memory to release
See also
allocate(uintptr_t)

◆ destroy()

void Burger::allocator< const void >::destroy ( pointer p)
inline

Destroys the contents of an object.

◆ max_size()

uintptr_t Burger::allocator< const void >::max_size ( ) const
inlinenoexcept

Maximum size possible to allocate.


Returns the maximum number of elements, each of member type value_type (an alias of allocator's template parameter) that could potentially be allocated by a call to member allocate.

Returns
UINTMAX_MAX

◆ operator=()

allocator & Burger::allocator< const void >::operator= ( allocator< const void > && )
defaultnoexcept

Assignment move constructor.