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< _Tp >
 
struct  std::allocator_traits< _Alloc >
 
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 229 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 242 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 510 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 238 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 141 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 153 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 168 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 181 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 57 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 122 of file uses_allocator_args.h.