cppassist  1.0.0.f4fab4f962ff
C++ sanctuary for small but powerful and frequently required, stand alone features.
Classes | Public Types | Public Member Functions | List of all members
cppassist::aligned_allocator< T, N > Class Template Reference

#include <cppassist/include/cppassist/simd/allocator.h>

Classes

struct  rebind
 

Public Types

typedef T value_type
 
typedef T & reference
 
typedef const T & const_reference
 
typedef T * pointer
 
typedef const T * const_pointer
 
typedef size_t size_type
 
typedef ptrdiff_t difference_type
 

Public Member Functions

 aligned_allocator () throw ()
 
 aligned_allocator (const aligned_allocator &) throw ()
 
template<class U >
 aligned_allocator (const aligned_allocator< U, N > &) throw ()
 
 ~aligned_allocator () throw ()
 
pointer address (reference r)
 
const_pointer address (const_reference r) const
 
pointer allocate (size_type n, typename std::allocator< void >::const_pointer hint=0)
 
void deallocate (pointer p, size_type)
 
void construct (pointer p, const_reference value)
 
void destroy (pointer p)
 
size_type max_size () const throw ()
 
bool operator== (const aligned_allocator &)
 
bool operator!= (const aligned_allocator &rhs)
 

Detailed Description

template<class T, int N>
class cppassist::aligned_allocator< T, N >

See also
http://jmabille.github.io/blog/2014/12/06/aligned-memory-allocator/

Member Typedef Documentation

◆ value_type

template<class T, int N>
typedef T cppassist::aligned_allocator< T, N >::value_type

◆ reference

template<class T, int N>
typedef T& cppassist::aligned_allocator< T, N >::reference

◆ const_reference

template<class T, int N>
typedef const T& cppassist::aligned_allocator< T, N >::const_reference

◆ pointer

template<class T, int N>
typedef T* cppassist::aligned_allocator< T, N >::pointer

◆ const_pointer

template<class T, int N>
typedef const T* cppassist::aligned_allocator< T, N >::const_pointer

◆ size_type

template<class T, int N>
typedef size_t cppassist::aligned_allocator< T, N >::size_type

◆ difference_type

template<class T, int N>
typedef ptrdiff_t cppassist::aligned_allocator< T, N >::difference_type

Constructor & Destructor Documentation

◆ aligned_allocator() [1/3]

template<class T, int N>
cppassist::aligned_allocator< T, N >::aligned_allocator ( )
throw (
)
inline

◆ aligned_allocator() [2/3]

template<class T, int N>
cppassist::aligned_allocator< T, N >::aligned_allocator ( const aligned_allocator< T, N > &  )
throw (
)
inline

◆ aligned_allocator() [3/3]

template<class T, int N>
template<class U >
cppassist::aligned_allocator< T, N >::aligned_allocator ( const aligned_allocator< U, N > &  )
throw (
)
inline

◆ ~aligned_allocator()

template<class T, int N>
cppassist::aligned_allocator< T, N >::~aligned_allocator ( )
throw (
)
inline

Member Function Documentation

◆ address() [1/2]

template<class T, int N>
pointer cppassist::aligned_allocator< T, N >::address ( reference  r)
inline

◆ address() [2/2]

template<class T, int N>
const_pointer cppassist::aligned_allocator< T, N >::address ( const_reference  r) const
inline

◆ allocate()

template<class T , int N>
aligned_allocator< T, N >::pointer cppassist::aligned_allocator< T, N >::allocate ( size_type  n,
typename std::allocator< void >::const_pointer  hint = 0 
)

◆ deallocate()

template<class T , int N>
void cppassist::aligned_allocator< T, N >::deallocate ( pointer  p,
size_type   
)
inline

◆ construct()

template<class T, int N>
void cppassist::aligned_allocator< T, N >::construct ( pointer  p,
const_reference  value 
)
inline

◆ destroy()

template<class T, int N>
void cppassist::aligned_allocator< T, N >::destroy ( pointer  p)
inline

◆ max_size()

template<class T, int N>
size_type cppassist::aligned_allocator< T, N >::max_size ( ) const
throw (
)
inline

◆ operator==()

template<class T, int N>
bool cppassist::aligned_allocator< T, N >::operator== ( const aligned_allocator< T, N > &  )
inline

◆ operator!=()

template<class T, int N>
bool cppassist::aligned_allocator< T, N >::operator!= ( const aligned_allocator< T, N > &  rhs)
inline

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