sparrow 0.9.0
Loading...
Searching...
No Matches
sparrow::any_allocator< T > Class Template Reference

#include <allocator.hpp>

Public Types

using value_type = T
 
template<allocator A>
using allocator_value_type = typename std::allocator_traits<std::decay_t<A>>::value_type
 

Public Member Functions

constexpr any_allocator ()
 
constexpr any_allocator (const any_allocator &rhs)
 
constexpr any_allocator (any_allocator &&) noexcept
 
constexpr any_allocatoroperator= (const any_allocator &rhs)=delete
 
constexpr any_allocatoroperator= (any_allocator &&rhs)=delete
 
template<class A>
requires ( not std::same_as<std::remove_cvref_t<A>, any_allocator> and allocator<A> and std::same_as<allocator_value_type<A>, T> )
constexpr any_allocator (A &&alloc)
 
constexpr T * allocate (std::size_t n)
 
constexpr void deallocate (T *p, std::size_t n)
 
constexpr any_allocator select_on_container_copy_construction () const
 
constexpr bool equal (const any_allocator &rhs) const
 

Detailed Description

template<class T>
class sparrow::any_allocator< T >

Definition at line 64 of file allocator.hpp.

Member Typedef Documentation

◆ allocator_value_type

template<class T>
template<allocator A>
using sparrow::any_allocator< T >::allocator_value_type = typename std::allocator_traits<std::decay_t<A>>::value_type

Definition at line 71 of file allocator.hpp.

◆ value_type

template<class T>
using sparrow::any_allocator< T >::value_type = T

Definition at line 68 of file allocator.hpp.

Constructor & Destructor Documentation

◆ any_allocator() [1/4]

template<class T>
sparrow::any_allocator< T >::any_allocator ( )
constexpr

Definition at line 204 of file allocator.hpp.

Here is the caller graph for this function:

◆ any_allocator() [2/4]

template<class T>
sparrow::any_allocator< T >::any_allocator ( const any_allocator< T > & rhs)
constexpr

Definition at line 210 of file allocator.hpp.

Here is the call graph for this function:

◆ any_allocator() [3/4]

template<class T>
sparrow::any_allocator< T >::any_allocator ( any_allocator< T > && rhs)
constexprnoexcept

Definition at line 216 of file allocator.hpp.

Here is the call graph for this function:

◆ any_allocator() [4/4]

template<class T>
template<class A>
requires ( not std::same_as<std::remove_cvref_t<A>, any_allocator> and allocator<A> and std::same_as<allocator_value_type<A>, T> )
sparrow::any_allocator< T >::any_allocator ( A && alloc)
inlineconstexpr

Definition at line 81 of file allocator.hpp.

Here is the call graph for this function:

Member Function Documentation

◆ allocate()

template<class T>
T * sparrow::any_allocator< T >::allocate ( std::size_t n)
nodiscardconstexpr

Definition at line 231 of file allocator.hpp.

◆ deallocate()

template<class T>
void constexpr sparrow::any_allocator< T >::deallocate ( T * p,
std::size_t n )
constexpr

Definition at line 252 of file allocator.hpp.

◆ equal()

template<class T>
bool sparrow::any_allocator< T >::equal ( const any_allocator< T > & rhs) const
nodiscardconstexpr

Definition at line 277 of file allocator.hpp.

Here is the call graph for this function:
Here is the caller graph for this function:

◆ operator=() [1/2]

template<class T>
any_allocator & sparrow::any_allocator< T >::operator= ( any_allocator< T > && rhs)
constexprdelete
Here is the call graph for this function:

◆ operator=() [2/2]

template<class T>
any_allocator & sparrow::any_allocator< T >::operator= ( const any_allocator< T > & rhs)
constexprdelete
Here is the call graph for this function:

◆ select_on_container_copy_construction()

template<class T>
any_allocator< T > sparrow::any_allocator< T >::select_on_container_copy_construction ( ) const
nodiscardconstexpr

Definition at line 271 of file allocator.hpp.

Here is the call graph for this function:

The documentation for this class was generated from the following file: