std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >(3cxx) | std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >(3cxx) |
NAME¶
std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs > - An adaptor to recursively pass an allocator to the objects it constructs.
SYNOPSIS¶
Inherits _OuterAlloc.
Public Types¶
typedef __traits::const_pointer const_pointer
typedef __traits::const_void_pointer const_void_pointer
typedef __traits::difference_type difference_type
typedef __inner_type::__type inner_allocator_type
typedef __and_< typename__traits::is_always_equal,
typenameallocator_traits< _InnerAllocs >::is_always_equal...
>::type is_always_equal
typedef _OuterAlloc outer_allocator_type
typedef __traits::pointer pointer
typedef __or_< typename__traits::propagate_on_container_copy_assignment,
typenameallocator_traits< _InnerAllocs
>::propagate_on_container_copy_assignment... >::type
propagate_on_container_copy_assignment
typedef __or_< typename__traits::propagate_on_container_move_assignment,
typenameallocator_traits< _InnerAllocs
>::propagate_on_container_move_assignment... >::type
propagate_on_container_move_assignment
typedef __or_< typename__traits::propagate_on_container_swap,
typenameallocator_traits< _InnerAllocs
>::propagate_on_container_swap... >::type
propagate_on_container_swap
typedef __traits::size_type size_type
typedef __traits::value_type value_type
typedef __traits::void_pointer void_pointer
Public Member Functions¶
template<typename _Outer2 , typename =
_Constructible<_Outer2>> scoped_allocator_adaptor (_Outer2
&&__outer, const _InnerAllocs &... __inner)
scoped_allocator_adaptor (const scoped_allocator_adaptor
&__other)
template<typename _Outer2 , typename = _Constructible<const
_Outer2&>> scoped_allocator_adaptor (const
scoped_allocator_adaptor< _Outer2, _InnerAllocs... >
&__other)
scoped_allocator_adaptor (scoped_allocator_adaptor
&&__other)
template<typename _Outer2 , typename = _Constructible<_Outer2>>
scoped_allocator_adaptor (scoped_allocator_adaptor<
_Outer2, _InnerAllocs... > &&__other)
pointer allocate (size_type __n)
pointer allocate (size_type __n, const_void_pointer __hint)
template<typename _Tp , typename... _Args> __not_pair< _Tp >::type
construct (_Tp *__p, _Args &&... __args)
template<typename _T1 , typename _T2 > void construct
(pair< _T1, _T2 > *__p)
template<typename _T1 , typename _T2 , typename _Up , typename _Vp >
void construct (pair< _T1, _T2 > *__p, _Up
&&__u, _Vp &&__v)
template<typename _T1 , typename _T2 , typename _Up , typename _Vp >
void construct (pair< _T1, _T2 > *__p, const
pair< _Up, _Vp > &__x)
template<typename _T1 , typename _T2 , typename _Up , typename _Vp >
void construct (pair< _T1, _T2 > *__p, pair<
_Up, _Vp > &&__x)
template<typename _T1 , typename _T2 , typename... _Args1, typename...
_Args2> void construct (pair< _T1, _T2 > *__p,
piecewise_construct_t, tuple< _Args1... > __x,
tuple< _Args2... > __y)
void deallocate (pointer __p, size_type __n)
template<typename _Tp > void destroy (_Tp *__p)
const inner_allocator_type & inner_allocator () const noexcept
inner_allocator_type & inner_allocator () noexcept
size_type max_size () const
scoped_allocator_adaptor & operator= (const
scoped_allocator_adaptor &)=default
scoped_allocator_adaptor & operator=
(scoped_allocator_adaptor &&)=default
const outer_allocator_type & outer_allocator () const noexcept
outer_allocator_type & outer_allocator () noexcept
scoped_allocator_adaptor select_on_container_copy_construction
() const
Friends¶
template<typename... > class __inner_type_impl
template<typename _OutA1 , typename _OutA2 , typename... _InA> bool
operator== (const scoped_allocator_adaptor< _OutA1, _InA...
> &__a, const scoped_allocator_adaptor< _OutA2, _InA...
> &__b) noexcept
Related Functions¶
(Note that these are not member functions.)
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 _OutA1 , typename _OutA2 , typename... _InA> bool
operator== (const scoped_allocator_adaptor< _OutA1, _InA...
> &__a, const scoped_allocator_adaptor< _OutA2, _InA...
> &__b) noexcept
Detailed Description¶
template<typename _OuterAlloc, typename... _InnerAllocs>¶
class std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >"An adaptor to recursively pass an allocator to the objects it constructs.
Definition at line 178 of file scoped_allocator.
Member Typedef Documentation¶
template<typename _OuterAlloc , typename... _InnerAllocs> typedef __traits::const_pointer std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::const_pointer¶
Definition at line 272 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> typedef __traits::const_void_pointer std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::const_void_pointer¶
Definition at line 274 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> typedef __traits::difference_type std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::difference_type¶
Definition at line 270 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> typedef __inner_type::__type std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::inner_allocator_type¶
Definition at line 266 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> typedef __and_<typename__traits::is_always_equal,typenameallocator_traits<_InnerAllocs>::is_always_equal...>::type std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::is_always_equal¶
Definition at line 297 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> typedef _OuterAlloc std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::outer_allocator_type¶
Definition at line 265 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> typedef __traits::pointer std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::pointer¶
Definition at line 271 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> typedef __or_<typename__traits::propagate_on_container_copy_assignment,typenameallocator_traits<_InnerAllocs>::propagate_on_container_copy_assignment...>::type std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::propagate_on_container_copy_assignment¶
Definition at line 280 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> typedef __or_<typename__traits::propagate_on_container_move_assignment,typenameallocator_traits<_InnerAllocs>::propagate_on_container_move_assignment...>::type std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::propagate_on_container_move_assignment¶
Definition at line 286 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> typedef __or_<typename__traits::propagate_on_container_swap,typenameallocator_traits<_InnerAllocs>::propagate_on_container_swap...>::type std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::propagate_on_container_swap¶
Definition at line 292 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> typedef __traits::size_type std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::size_type¶
Definition at line 269 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> typedef __traits::value_type std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::value_type¶
Definition at line 268 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> typedef __traits::void_pointer std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::void_pointer¶
Definition at line 273 of file scoped_allocator.
Constructor & Destructor Documentation¶
template<typename _OuterAlloc , typename... _InnerAllocs> std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::scoped_allocator_adaptor () [inline]¶
Definition at line 307 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> template<typename _Outer2 , typename = _Constructible<_Outer2>> std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::scoped_allocator_adaptor (_Outer2 && __outer, const _InnerAllocs &... __inner) [inline]¶
Definition at line 310 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::scoped_allocator_adaptor (const scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs > & __other) [inline]¶
Definition at line 316 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::scoped_allocator_adaptor (scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs > && __other) [inline]¶
Definition at line 321 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> template<typename _Outer2 , typename = _Constructible<const _Outer2&>> std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::scoped_allocator_adaptor (const scoped_allocator_adaptor< _Outer2, _InnerAllocs... > & __other) [inline]¶
Definition at line 327 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> template<typename _Outer2 , typename = _Constructible<_Outer2>> std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::scoped_allocator_adaptor (scoped_allocator_adaptor< _Outer2, _InnerAllocs... > && __other) [inline]¶
Definition at line 334 of file scoped_allocator.
Member Function Documentation¶
template<typename _OuterAlloc , typename... _InnerAllocs> pointer std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::allocate (size_type __n) [inline]¶
Definition at line 358 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> pointer std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::allocate (size_type __n, const_void_pointer __hint) [inline]¶
Definition at line 361 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> template<typename _Tp , typename... _Args> __not_pair< _Tp >::type std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::construct (_Tp * __p, _Args &&... __args) [inline]¶
Definition at line 373 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> template<typename _T1 , typename _T2 > void std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::construct (pair< _T1, _T2 > * __p) [inline]¶
Definition at line 404 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> template<typename _T1 , typename _T2 , typename _Up , typename _Vp > void std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::construct (pair< _T1, _T2 > * __p, _Up && __u, _Vp && __v) [inline]¶
Definition at line 409 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> template<typename _T1 , typename _T2 , typename _Up , typename _Vp > void std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::construct (pair< _T1, _T2 > * __p, const pair< _Up, _Vp > & __x) [inline]¶
Definition at line 418 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> template<typename _T1 , typename _T2 , typename _Up , typename _Vp > void std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::construct (pair< _T1, _T2 > * __p, pair< _Up, _Vp > && __x) [inline]¶
Definition at line 427 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> template<typename _T1 , typename _T2 , typename... _Args1, typename... _Args2> void std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::construct (pair< _T1, _T2 > * __p, piecewise_construct_t, tuple< _Args1... > __x, tuple< _Args2... > __y) [inline]¶
Definition at line 384 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> void std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::deallocate (pointer __p, size_type __n) [inline]¶
Definition at line 364 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> template<typename _Tp > void std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::destroy (_Tp * __p) [inline]¶
Definition at line 450 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> const inner_allocator_type & std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::inner_allocator () const [inline], [noexcept]¶
Definition at line 349 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> inner_allocator_type & std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::inner_allocator () [inline], [noexcept]¶
Definition at line 346 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> size_type std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::max_size () const [inline]¶
Definition at line 367 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> const outer_allocator_type & std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::outer_allocator () const [inline], [noexcept]¶
Definition at line 355 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> outer_allocator_type & std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::outer_allocator () [inline], [noexcept]¶
Definition at line 352 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> scoped_allocator_adaptor std::scoped_allocator_adaptor< _OuterAlloc, _InnerAllocs >::select_on_container_copy_construction () const [inline]¶
Definition at line 457 of file scoped_allocator.
Friends And Related Function Documentation¶
template<typename _OuterAlloc , typename... _InnerAllocs> template<typename _Outer , typename... _Inner> friend class scoped_allocator_adaptor [friend]¶
Definition at line 187 of file scoped_allocator.
template<typename _OuterAlloc , typename... _InnerAllocs> template<typename... > friend class __inner_type_impl [friend]¶
Definition at line 190 of file scoped_allocator.
Author¶
Generated automatically by Doxygen for libstdc++ from the source code.
Thu Feb 16 2023 | libstdc++ |