| 
    libstdc++
    
   | 
 
#include <alloc_traits.h>
Public Types | |
| typedef std::allocator_traits< _Alloc > | _Base_type | 
| typedef _Alloc | allocator_type | 
| typedef _Base_type::const_pointer | const_pointer | 
| typedef const value_type & | const_reference | 
| using | const_void_pointer = typename _Ptr< __cv_pointer, const void >::type | 
| typedef _Base_type::difference_type | difference_type | 
| using | is_always_equal = typename __detected_or_t< is_empty< _Alloc >, __equal, _Alloc >::type | 
| typedef _Base_type::pointer | pointer | 
| using | propagate_on_container_copy_assignment = __detected_or_t< false_type, __pocca, _Alloc > | 
| using | propagate_on_container_move_assignment = __detected_or_t< false_type, __pocma, _Alloc > | 
| using | propagate_on_container_swap = __detected_or_t< false_type, __pocs, _Alloc > | 
| template<typename _Tp > | |
| using | rebind_alloc = __alloc_rebind< _Alloc, _Tp > | 
| template<typename _Tp > | |
| using | rebind_traits = allocator_traits< rebind_alloc< _Tp > > | 
| typedef value_type & | reference | 
| typedef _Base_type::size_type | size_type | 
| typedef _Base_type::value_type | value_type | 
| using | void_pointer = typename _Ptr< __v_pointer, void >::type | 
Static Public Member Functions | |
| static constexpr bool | _S_always_equal () | 
| static constexpr bool | _S_nothrow_move () | 
| static constexpr void | _S_on_swap (_Alloc &__a, _Alloc &__b) | 
| static constexpr bool | _S_propagate_on_copy_assign () | 
| static constexpr bool | _S_propagate_on_move_assign () | 
| static constexpr bool | _S_propagate_on_swap () | 
| static constexpr _Alloc | _S_select_on_copy (const _Alloc &__a) | 
| static constexpr pointer | allocate (_Alloc &__a, size_type __n) | 
| static constexpr pointer | allocate (_Alloc &__a, size_type __n) | 
| static constexpr pointer | allocate (_Alloc &__a, size_type __n, const_void_pointer __hint) | 
| static constexpr pointer | allocate (_Alloc &__a, size_type __n, const_void_pointer __hint) | 
| template<typename _Ptr , typename... _Args> | |
| static constexpr std::__enable_if_t< __is_custom_pointer< _Ptr >::value > | construct (_Alloc &__a, _Ptr __p, _Args &&... __args) noexcept(noexcept(_Base_type::construct(__a, std::__to_address(__p), std::forward< _Args >(__args)...))) | 
| template<typename _Tp , typename... _Args> | |
| static constexpr auto | construct (_Alloc &__a, _Tp *__p, _Args &&... __args) noexcept(noexcept(_S_construct(__a, __p, std::forward< _Args >(__args)...))) -> decltype(_S_construct(__a, __p, std::forward< _Args >(__args)...)) | 
| static constexpr void | deallocate (_Alloc &__a, pointer __p, size_type __n) | 
| static constexpr void | deallocate (_Alloc &__a, pointer __p, size_type __n) | 
| template<typename _Ptr > | |
| static constexpr std::__enable_if_t< __is_custom_pointer< _Ptr >::value > | destroy (_Alloc &__a, _Ptr __p) noexcept(noexcept(_Base_type::destroy(__a, std::__to_address(__p)))) | 
| template<typename _Tp > | |
| static constexpr void | destroy (_Alloc &__a, _Tp *__p) noexcept(noexcept(_S_destroy(__a, __p, 0))) | 
| static constexpr size_type | max_size (const _Alloc &__a) noexcept | 
| static constexpr _Alloc | select_on_container_copy_construction (const _Alloc &__rhs) | 
Uniform interface to C++98 and C++11 allocators.
Definition at line 45 of file ext/alloc_traits.h.
| typedef std::allocator_traits<_Alloc> __gnu_cxx::__alloc_traits< _Alloc, typename >::_Base_type | 
Definition at line 52 of file ext/alloc_traits.h.
| typedef _Alloc __gnu_cxx::__alloc_traits< _Alloc, typename >::allocator_type | 
Definition at line 50 of file ext/alloc_traits.h.
| typedef _Base_type::const_pointer __gnu_cxx::__alloc_traits< _Alloc, typename >::const_pointer | 
Definition at line 55 of file ext/alloc_traits.h.
| typedef const value_type& __gnu_cxx::__alloc_traits< _Alloc, typename >::const_reference | 
Definition at line 60 of file ext/alloc_traits.h.
      
  | 
  inherited | 
The allocator's const void pointer type.
Alloc::const_void_pointer if that type exists, otherwise  pointer_traits<pointer>::rebind<const void>  
Definition at line 173 of file bits/alloc_traits.h.
| typedef _Base_type::difference_type __gnu_cxx::__alloc_traits< _Alloc, typename >::difference_type | 
Definition at line 57 of file ext/alloc_traits.h.
      
  | 
  inherited | 
Whether all instances of the allocator type compare equal.
Alloc::is_always_equal if that type exists, otherwise is_empty<Alloc>::type 
Definition at line 224 of file bits/alloc_traits.h.
| typedef _Base_type::pointer __gnu_cxx::__alloc_traits< _Alloc, typename >::pointer | 
Definition at line 54 of file ext/alloc_traits.h.
      
  | 
  inherited | 
How the allocator is propagated on copy assignment.
Alloc::propagate_on_container_copy_assignment if that type exists, otherwise false_type 
Definition at line 197 of file bits/alloc_traits.h.
      
  | 
  inherited | 
How the allocator is propagated on move assignment.
Alloc::propagate_on_container_move_assignment if that type exists, otherwise false_type 
Definition at line 206 of file bits/alloc_traits.h.
      
  | 
  inherited | 
How the allocator is propagated on swap.
Alloc::propagate_on_container_swap if that type exists, otherwise false_type 
Definition at line 215 of file bits/alloc_traits.h.
      
  | 
  inherited | 
Definition at line 228 of file bits/alloc_traits.h.
      
  | 
  inherited | 
Definition at line 230 of file bits/alloc_traits.h.
| typedef value_type& __gnu_cxx::__alloc_traits< _Alloc, typename >::reference | 
Definition at line 59 of file ext/alloc_traits.h.
| typedef _Base_type::size_type __gnu_cxx::__alloc_traits< _Alloc, typename >::size_type | 
Definition at line 56 of file ext/alloc_traits.h.
| typedef _Base_type::value_type __gnu_cxx::__alloc_traits< _Alloc, typename >::value_type | 
Definition at line 53 of file ext/alloc_traits.h.
      
  | 
  inherited | 
The allocator's void pointer type.
Alloc::void_pointer if that type exists, otherwise  pointer_traits<pointer>::rebind<void>  
Definition at line 165 of file bits/alloc_traits.h.
      
  | 
  inlinestaticconstexpr | 
Definition at line 117 of file ext/alloc_traits.h.
      
  | 
  inlinestaticconstexpr | 
Definition at line 121 of file ext/alloc_traits.h.
      
  | 
  inlinestaticconstexpr | 
Definition at line 101 of file ext/alloc_traits.h.
      
  | 
  inlinestaticconstexpr | 
Definition at line 105 of file ext/alloc_traits.h.
      
  | 
  inlinestaticconstexpr | 
Definition at line 109 of file ext/alloc_traits.h.
      
  | 
  inlinestaticconstexpr | 
Definition at line 113 of file ext/alloc_traits.h.
      
  | 
  inlinestaticconstexpr | 
Definition at line 97 of file ext/alloc_traits.h.
      
  | 
  inlinestaticconstexprinherited | 
Allocate memory.
| __a | An allocator. | 
| __n | The number of objects to allocate space for. | 
Calls a.allocate(n) 
Definition at line 332 of file bits/alloc_traits.h.
      
  | 
  inlinestaticconstexpr | 
Allocate memory.
| __a | An allocator. | 
| __n | The number of objects to allocate space for. | 
Calls a.allocate(n) 
Definition at line 332 of file bits/alloc_traits.h.
      
  | 
  inlinestaticconstexprinherited | 
Allocate memory.
| __a | An allocator. | 
| __n | The number of objects to allocate space for. | 
| __hint | Aid to locality. | 
value_type Returns  a.allocate(n, hint)  if that expression is well-formed, otherwise returns a.allocate(n) 
Definition at line 347 of file bits/alloc_traits.h.
      
  | 
  inlinestaticconstexpr | 
Allocate memory.
| __a | An allocator. | 
| __n | The number of objects to allocate space for. | 
| __hint | Aid to locality. | 
value_type Returns  a.allocate(n, hint)  if that expression is well-formed, otherwise returns a.allocate(n) 
Definition at line 347 of file bits/alloc_traits.h.
      
  | 
  inlinestaticconstexprnoexcept | 
Definition at line 79 of file ext/alloc_traits.h.
      
  | 
  inlinestaticconstexprnoexcept | 
Construct an object of type _Tp 
| __a | An allocator. | 
| __p | Pointer to memory of suitable size and alignment for Tp | 
| __args | Constructor arguments. | 
Calls  __a.construct(__p, std::forward<Args>(__args)...)  if that expression is well-formed, otherwise uses placement-new to construct an object of type _Tp at location __p from the arguments __args... 
Definition at line 375 of file bits/alloc_traits.h.
      
  | 
  inlinestaticconstexprinherited | 
Deallocate memory.
| __a | An allocator. | 
| __p | Pointer to the memory to deallocate. | 
| __n | The number of objects space was allocated for. | 
Calls  a.deallocate(p, n)  
Definition at line 359 of file bits/alloc_traits.h.
      
  | 
  inlinestaticconstexpr | 
Deallocate memory.
| __a | An allocator. | 
| __p | Pointer to the memory to deallocate. | 
| __n | The number of objects space was allocated for. | 
Calls  a.deallocate(p, n)  
Definition at line 359 of file bits/alloc_traits.h.
      
  | 
  inlinestaticconstexprnoexcept | 
Definition at line 92 of file ext/alloc_traits.h.
      
  | 
  inlinestaticconstexprnoexcept | 
Destroy an object of type _Tp.
| __a | An allocator. | 
| __p | Pointer to the object to destroy | 
Calls __a.destroy(__p) if that expression is well-formed, otherwise calls __p->~_Tp() 
Definition at line 391 of file bits/alloc_traits.h.
      
  | 
  inlinestaticconstexprnoexcept | 
The maximum supported allocation size.
| __a | An allocator. | 
__a.max_size() or numeric_limits<size_type>::max() Returns __a.max_size() if that expression is well-formed, otherwise returns numeric_limits<size_type>::max() 
Definition at line 404 of file bits/alloc_traits.h.
Referenced by std::forward_list< _Tp, _Alloc >::max_size(), and std::list< _Tp, _Alloc >::max_size().
      
  | 
  inlinestaticconstexprinherited | 
Obtain an allocator to use when copying a container.
| __rhs | An allocator. | 
__rhs.select_on_container_copy_construction() or __rhs Returns __rhs.select_on_container_copy_construction() if that expression is well-formed, otherwise returns __rhs 
Definition at line 416 of file bits/alloc_traits.h.