libstdc++: std::allocator_traits< allocator< void > > Struct Reference

libstdc++

std::allocator_traits< allocator< void > > Struct Reference
Utilities » Memory » Allocators

`#include <memory>`

## Public Types
using | allocator_type
using | const_pointer
using | const_void_pointer
using | difference_type
using | is_always_equal
using | pointer
using | propagate_on_container_copy_assignment
using | propagate_on_container_move_assignment
using | propagate_on_container_swap
template<typename _Up>
using | rebind_alloc
template<typename _Up>
using | rebind_traits
using | size_type
using | value_type
using | void_pointer

## Static Public Member Functions
static void * | allocate (allocator_type &, size_type, const void *=nullptr)=delete
static allocation_result< void *, size_type > | allocate_at_least (allocator_type &, size_type)=delete
template<typename _Up, typename... _Args>
static constexpr void | construct (allocator_type &, _Up *__p, _Args &&... __args) noexcept(__is_nothrow_new_constructible< _Up, _Args... >)
static void | deallocate (allocator_type &, void *, size_type)=delete
template<typename _Up>
static constexpr void | destroy (allocator_type &, _Up *__p) noexcept(is_nothrow_destructible< _Up >::value)
static size_type | max_size (const allocator_type &)=delete
static constexpr allocator_type | select_on_container_copy_construction (const allocator_type &__rhs)

## Detailed Description

Explicit specialization for std::allocator<void>.

Since
  C++11

See also
  std::allocator_traits

Definition at line 776 of file bits/alloc_traits.h.

## Member Typedef Documentation

## ◆ allocator_type

using std::allocator_traits< allocator< void > >::allocator_type

The allocator type.

Definition at line 779 of file bits/alloc_traits.h.

## ◆ const_pointer

using std::allocator_traits< allocator< void > >::const_pointer

The allocator's const pointer type.

Definition at line 788 of file bits/alloc_traits.h.

## ◆ const_void_pointer

using std::allocator_traits< allocator< void > >::const_void_pointer

The allocator's const void pointer type.

Definition at line 794 of file bits/alloc_traits.h.

## ◆ difference_type

using std::allocator_traits< allocator< void > >::difference_type

The allocator's difference type.

Definition at line 797 of file bits/alloc_traits.h.

## ◆ is_always_equal

using std::allocator_traits< allocator< void > >::is_always_equal

Whether all instances of the allocator type compare equal.

Definition at line 812 of file bits/alloc_traits.h.

## ◆ pointer

using std::allocator_traits< allocator< void > >::pointer

The allocator's pointer type.

Definition at line 785 of file bits/alloc_traits.h.

## ◆ propagate_on_container_copy_assignment

using std::allocator_traits< allocator< void > >::propagate_on_container_copy_assignment

How the allocator is propagated on copy assignment.

Definition at line 803 of file bits/alloc_traits.h.

## ◆ propagate_on_container_move_assignment

using std::allocator_traits< allocator< void > >::propagate_on_container_move_assignment

How the allocator is propagated on move assignment.

Definition at line 806 of file bits/alloc_traits.h.

## ◆ propagate_on_container_swap

using std::allocator_traits< allocator< void > >::propagate_on_container_swap

How the allocator is propagated on swap.

Definition at line 809 of file bits/alloc_traits.h.

## ◆ rebind_alloc

template<typename _Up>

using std::allocator_traits< allocator< void > >::rebind_alloc

Definition at line 815 of file bits/alloc_traits.h.

## ◆ rebind_traits

template<typename _Up>

using std::allocator_traits< allocator< void > >::rebind_traits

Definition at line 818 of file bits/alloc_traits.h.

## ◆ size_type

using std::allocator_traits< allocator< void > >::size_type

The allocator's size type.

Definition at line 800 of file bits/alloc_traits.h.

## ◆ value_type

using std::allocator_traits< allocator< void > >::value_type

The allocated type.

Definition at line 782 of file bits/alloc_traits.h.

## ◆ void_pointer

using std::allocator_traits< allocator< void > >::void_pointer

The allocator's void pointer type.

Definition at line 791 of file bits/alloc_traits.h.

## Member Function Documentation

## ◆ allocate()

void * std::allocator_traits< allocator< void > >::allocate | ( | allocator_type & | ,
|  | size_type | ,
|  | const void * | = nullptr )
| static delete

allocate is ill-formed for allocator<void>

## ◆ construct()

template<typename _Up, typename... _Args>

constexpr void std::allocator_traits< allocator< void > >::construct | ( | allocator_type & | ,
|  | _Up * | __p,
|  | _Args &&... | __args )
| inline static constexpr noexcept

Construct an object of type _Up.

Parameters

  __a | An allocator.
  __p | Pointer to memory of suitable size and alignment for an object of type _Up.
  __args | Constructor arguments.

Calls __a.construct(__p, std::forward<_Args>(__args)...) in C++11, C++14 and C++17. Changed in C++20 to call std::construct_at(__p, std::forward<_Args>(__args)...) instead.

Definition at line 847 of file bits/alloc_traits.h.

References std::_Construct(), and std::forward().

## ◆ deallocate()

void std::allocator_traits< allocator< void > >::deallocate | ( | allocator_type & | ,
|  | void * | ,
|  | size_type | )
| static delete

deallocate is ill-formed for allocator<void>

## ◆ destroy()

template<typename _Up>

constexpr void std::allocator_traits< allocator< void > >::destroy | ( | allocator_type & | ,
|  | _Up * | __p )
| inline static constexpr noexcept

Destroy an object of type _Up.

Parameters

  __a | An allocator.
  __p | Pointer to the object to destroy

Invokes the destructor for *__p.

Definition at line 861 of file bits/alloc_traits.h.

References std::_Destroy().

## ◆ max_size()

size_type std::allocator_traits< allocator< void > >::max_size | ( | const allocator_type & |  | ) |
| static delete

max_size is ill-formed for allocator<void>

## ◆ select_on_container_copy_construction()

constexpr allocator_type std::allocator_traits< allocator< void > >::select_on_container_copy_construction | ( | const allocator_type & | __rhs | ) |
| inline static constexpr

Obtain an allocator to use when copying a container.

Parameters

  __rhs | An allocator.

Returns
  __rhs

Definition at line 876 of file bits/alloc_traits.h.

The documentation for this struct was generated from the following file:

- bits/alloc_traits.h