Allocators
Utilities » Memory
Collaboration diagram for Allocators:

## Classes

struct | __gnu_cxx::__alloc_traits< _Alloc, typename >
class | __gnu_cxx::__mt_alloc< _Tp, _Poolp >
class | std::__new_allocator< _Tp >
class | __gnu_cxx::__pool_alloc< _Tp >
class | __gnu_cxx::_ExtPtr_allocator< _Tp >
class | std::allocator< _Tp >
class | std::allocator< void >
struct | std::allocator_traits< _Alloc >
class | __gnu_cxx::bitmap_allocator< _Tp >
class | __gnu_cxx::debug_allocator< _Alloc >
class | __gnu_cxx::malloc_allocator< _Tp >
class | __gnu_cxx::new_allocator< _Tp >
class | std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >
class | __gnu_cxx::throw_allocator_base< _Tp, _Cond >
struct | std::uses_allocator< typename, typename >

## Macros

#define | __cpp_lib_make_obj_using_allocator

## Typedefs

template<typename _Tp >
using | std::__allocator_base = __new_allocator< _Tp >

## Functions

template<typename _Tp , typename _Alloc , typename... _Args>
constexpr _Tp | std::make_obj_using_allocator (const _Alloc &__a, _Args &&... __args)
template<typename _T1 , typename _T2 >
constexpr bool | operator== (const allocator< _T1 > &, const allocator< _T2 > &) noexcept
template<typename _OutA1 , typename _OutA2 , typename... _InA>
bool | operator== (const scoped_allocator_adaptor< _OutA1, _InA... > &__a, const scoped_allocator_adaptor< _OutA2, _InA... > &__b) noexcept
template<typename _Tp , typename _Alloc , typename... _Args>
constexpr _Tp * | std::uninitialized_construct_using_allocator (_Tp *__p, const _Alloc &__a, _Args &&... __args)
template<_Std_pair _Tp, typename _Alloc >
constexpr auto | std::uses_allocator_construction_args (const _Alloc &) noexcept
template<_Std_pair _Tp, typename _Alloc , typename _Up , typename _Vp >
constexpr auto | std::uses_allocator_construction_args (const _Alloc &, _Up &&, _Vp &&) noexcept
template<_Std_pair _Tp, typename _Alloc , typename _Up , typename _Vp >
constexpr auto | std::uses_allocator_construction_args (const _Alloc &, const pair< _Up, _Vp > &) noexcept
template<_Std_pair _Tp, typename _Alloc , typename _Up , typename _Vp >
constexpr auto | std::uses_allocator_construction_args (const _Alloc &, pair< _Up, _Vp > &&) noexcept
template<typename _Tp , typename _Alloc , typename... _Args> requires (! _Std_pair<_Tp>)
constexpr auto | std::uses_allocator_construction_args (const _Alloc &__a, _Args &&... __args) noexcept
template<_Std_pair _Tp, typename _Alloc , typename _Tuple1 , typename _Tuple2 >
constexpr auto | std::uses_allocator_construction_args (const _Alloc &__a, piecewise_construct_t, _Tuple1 &&__x, _Tuple2 &&__y) noexcept

## Detailed Description

Classes encapsulating memory operations.

## Macro Definition Documentation

## __cpp_lib_make_obj_using_allocator

#define __cpp_lib_make_obj_using_allocator

Definition at line 54 of file uses_allocator_args.h.

## Typedef Documentation

## __allocator_base

template<typename _Tp >

using std::__allocator_base = typedef __new_allocator<_Tp>

An alias to the base class for std::allocator.

Used to set the std::allocator base class to std::__new_allocator.

Template Parameters

  _Tp | Type of allocated object.

Definition at line 47 of file c++allocator.h.

## Function Documentation

## make_obj_using_allocator()

template<typename _Tp , typename _Alloc , typename... _Args>

constexpr _Tp std::make_obj_using_allocator | ( | const _Alloc & | __a,
|  | _Args &&... | __args
| ) |  |

constexpr

Definition at line 230 of file uses_allocator_args.h.

## operator==() [1/2]

template<typename _T1 , typename _T2 >

constexpr bool operator== | ( | const allocator< _T1 > & | ,
|  | const allocator< _T2 > & |
| ) |  |

related

Equality comparison for std::allocator objects

Returns
  true, for all std::allocator objects.

Definition at line 237 of file allocator.h.

## operator==() [2/2]

template<typename _OutA1 , typename _OutA2 , typename... _InA>

bool operator== | ( | const scoped_allocator_adaptor< _OutA1, _InA... > & | __a,
|  | const scoped_allocator_adaptor< _OutA2, _InA... > & | __b
| ) |  |

related

Definition at line 505 of file scoped_allocator.

## uninitialized_construct_using_allocator()

template<typename _Tp , typename _Alloc , typename... _Args>

constexpr _Tp * std::uninitialized_construct_using_allocator | ( | _Tp * | __p,
|  | const _Alloc & | __a,
|  | _Args &&... | __args
| ) |  |

constexpr

Definition at line 239 of file uses_allocator_args.h.

## uses_allocator_construction_args() [1/6]

template<_Std_pair _Tp, typename _Alloc >

constexpr auto std::uses_allocator_construction_args | ( | const _Alloc & | __a | ) |

constexpr noexcept

Definition at line 142 of file uses_allocator_args.h.

## uses_allocator_construction_args() [2/6]

template<_Std_pair _Tp, typename _Alloc , typename _Up , typename _Vp >

constexpr auto std::uses_allocator_construction_args | ( | const _Alloc & | __a,
|  | _Up && | __u,
|  | _Vp && | __v
| ) |  |

constexpr noexcept

Definition at line 154 of file uses_allocator_args.h.

## uses_allocator_construction_args() [3/6]

template<_Std_pair _Tp, typename _Alloc , typename _Up , typename _Vp >

constexpr auto std::uses_allocator_construction_args | ( | const _Alloc & | __a,
|  | const pair< _Up, _Vp > & | __pr
| ) |  |

constexpr noexcept

Definition at line 169 of file uses_allocator_args.h.

## uses_allocator_construction_args() [4/6]

template<_Std_pair _Tp, typename _Alloc , typename _Up , typename _Vp >

constexpr auto std::uses_allocator_construction_args | ( | const _Alloc & | __a,
|  | pair< _Up, _Vp > && | __pr
| ) |  |

constexpr noexcept

Definition at line 182 of file uses_allocator_args.h.

## uses_allocator_construction_args() [5/6]

template<typename _Tp , typename _Alloc , typename... _Args>
requires (! _Std_pair<_Tp>)

constexpr auto std::uses_allocator_construction_args | ( | const _Alloc & | __a,
|  | _Args &&... | __args
| ) |  |

constexpr noexcept

Definition at line 58 of file uses_allocator_args.h.

## uses_allocator_construction_args() [6/6]

template<_Std_pair _Tp, typename _Alloc , typename _Tuple1 , typename _Tuple2 >

constexpr auto std::uses_allocator_construction_args | ( | const _Alloc & | __a,
|  | piecewise_construct_t | ,
|  | _Tuple1 && | __x,
|  | _Tuple2 && | __y
| ) |  |

constexpr noexcept

Definition at line 123 of file uses_allocator_args.h.