libstdc++
Allocators
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< typename >
 
class  std::allocator< void >
 
struct  std::allocator_traits< typename >
 
struct  std::allocator_traits< allocator< _Tp > >
 
struct  std::allocator_traits< allocator< void > >
 
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 >
 

Typedefs

template<typename _Tp >
using std::__allocator_base
 

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.

Typedef Documentation

◆ __allocator_base

template<typename _Tp >
using std::__allocator_base

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

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

Template Parameters
_TpType 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>
_Tp std::make_obj_using_allocator ( const _Alloc & __a,
_Args &&... __args )
constexpr

Definition at line 227 of file uses_allocator_args.h.

◆ operator==() [1/2]

template<typename _T1 , typename _T2 >
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 235 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 508 of file scoped_allocator.

◆ uninitialized_construct_using_allocator()

template<typename _Tp , typename _Alloc , typename... _Args>
_Tp * std::uninitialized_construct_using_allocator ( _Tp * __p,
const _Alloc & __a,
_Args &&... __args )
constexpr

Definition at line 236 of file uses_allocator_args.h.

◆ uses_allocator_construction_args() [1/6]

template<_Std_pair _Tp, typename _Alloc >
auto std::uses_allocator_construction_args ( const _Alloc & __a)
constexprnoexcept

Definition at line 139 of file uses_allocator_args.h.

◆ uses_allocator_construction_args() [2/6]

template<_Std_pair _Tp, typename _Alloc , typename _Up , typename _Vp >
auto std::uses_allocator_construction_args ( const _Alloc & __a,
_Up && __u,
_Vp && __v )
constexprnoexcept

Definition at line 151 of file uses_allocator_args.h.

◆ uses_allocator_construction_args() [3/6]

template<_Std_pair _Tp, typename _Alloc , typename _Up , typename _Vp >
auto std::uses_allocator_construction_args ( const _Alloc & __a,
const pair< _Up, _Vp > & __pr )
constexprnoexcept

Definition at line 166 of file uses_allocator_args.h.

◆ uses_allocator_construction_args() [4/6]

template<_Std_pair _Tp, typename _Alloc , typename _Up , typename _Vp >
auto std::uses_allocator_construction_args ( const _Alloc & __a,
pair< _Up, _Vp > && __pr )
constexprnoexcept

Definition at line 179 of file uses_allocator_args.h.

◆ uses_allocator_construction_args() [5/6]

template<typename _Tp , typename _Alloc , typename... _Args>
requires (! _Std_pair<_Tp>)
auto std::uses_allocator_construction_args ( const _Alloc & __a,
_Args &&... __args )
constexprnoexcept

Definition at line 55 of file uses_allocator_args.h.

◆ uses_allocator_construction_args() [6/6]

template<_Std_pair _Tp, typename _Alloc , typename _Tuple1 , typename _Tuple2 >
auto std::uses_allocator_construction_args ( const _Alloc & __a,
piecewise_construct_t ,
_Tuple1 && __x,
_Tuple2 && __y )
constexprnoexcept

Definition at line 120 of file uses_allocator_args.h.