Arcane  4.1.12.0
Developer documentation
Loading...
Searching...
No Matches
StdAllocator< T, BaseAllocator > Class Template Reference
Inheritance diagram for StdAllocator< T, BaseAllocator >:
Collaboration diagram for StdAllocator< T, BaseAllocator >:

Classes

struct  rebind

Public Types

typedef BaseAllocator BaseAllocatorType
typedef traits_type::size_type size_type
typedef traits_type::difference_type difference_type
typedef traits_type::value_type value_type
typedef traits_type::pointer pointer
typedef traits_type::const_pointer const_pointer
typedef allocator_type::reference reference
typedef allocator_type::const_reference const_reference

Public Member Functions

 StdAllocator (const StdAllocator &rhs) RAPIDJSON_NOEXCEPT
template<typename U>
 StdAllocator (const StdAllocator< U, BaseAllocator > &rhs) RAPIDJSON_NOEXCEPT
 StdAllocator (const BaseAllocator &baseAllocator) RAPIDJSON_NOEXCEPT
pointer address (reference r) const RAPIDJSON_NOEXCEPT
const_pointer address (const_reference r) const RAPIDJSON_NOEXCEPT
size_type max_size () const RAPIDJSON_NOEXCEPT
void construct (pointer p, const_reference r)
void destroy (pointer p)
template<typename U>
U * allocate (size_type n=1, const void *=0)
template<typename U>
void deallocate (U *p, size_type n=1)
pointer allocate (size_type n=1, const void *=0)
void deallocate (pointer p, size_type n=1)
template<typename U>
bool operator== (const StdAllocator< U, BaseAllocator > &rhs) const RAPIDJSON_NOEXCEPT
template<typename U>
bool operator!= (const StdAllocator< U, BaseAllocator > &rhs) const RAPIDJSON_NOEXCEPT
void * Malloc (size_t size)
void * Realloc (void *originalPtr, size_t originalSize, size_t newSize)

Static Public Member Functions

static void Free (void *ptr) RAPIDJSON_NOEXCEPT

Static Public Attributes

static const bool kNeedFree = BaseAllocator::kNeedFree
 rapidjson Allocator concept
static const bool kRefCounted = internal::IsRefCounted<BaseAllocator>::Value

Private Types

typedef std::allocator< T > allocator_type
typedef allocator_type traits_type

Private Attributes

BaseAllocator baseAllocator_

Detailed Description

template<typename T, typename BaseAllocator = CrtAllocator>
class StdAllocator< T, BaseAllocator >

Definition at line 460 of file allocators.h.

Member Typedef Documentation

◆ allocator_type

template<typename T, typename BaseAllocator = CrtAllocator>
typedef std::allocator<T> StdAllocator< T, BaseAllocator >::allocator_type
private

Definition at line 463 of file allocators.h.

◆ BaseAllocatorType

template<typename T, typename BaseAllocator = CrtAllocator>
typedef BaseAllocator StdAllocator< T, BaseAllocator >::BaseAllocatorType

Definition at line 471 of file allocators.h.

◆ const_pointer

template<typename T, typename BaseAllocator = CrtAllocator>
typedef traits_type::const_pointer StdAllocator< T, BaseAllocator >::const_pointer

Definition at line 519 of file allocators.h.

◆ const_reference

template<typename T, typename BaseAllocator = CrtAllocator>
typedef allocator_type::const_reference StdAllocator< T, BaseAllocator >::const_reference

Definition at line 553 of file allocators.h.

◆ difference_type

template<typename T, typename BaseAllocator = CrtAllocator>
typedef traits_type::difference_type StdAllocator< T, BaseAllocator >::difference_type

Definition at line 515 of file allocators.h.

◆ pointer

template<typename T, typename BaseAllocator = CrtAllocator>
typedef traits_type::pointer StdAllocator< T, BaseAllocator >::pointer

Definition at line 518 of file allocators.h.

◆ reference

template<typename T, typename BaseAllocator = CrtAllocator>
typedef allocator_type::reference StdAllocator< T, BaseAllocator >::reference

Definition at line 552 of file allocators.h.

◆ size_type

template<typename T, typename BaseAllocator = CrtAllocator>
typedef traits_type::size_type StdAllocator< T, BaseAllocator >::size_type

Definition at line 514 of file allocators.h.

◆ traits_type

template<typename T, typename BaseAllocator = CrtAllocator>
typedef allocator_type StdAllocator< T, BaseAllocator >::traits_type
private

Definition at line 467 of file allocators.h.

◆ value_type

template<typename T, typename BaseAllocator = CrtAllocator>
typedef traits_type::value_type StdAllocator< T, BaseAllocator >::value_type

Definition at line 517 of file allocators.h.

Constructor & Destructor Documentation

◆ StdAllocator() [1/4]

template<typename T, typename BaseAllocator = CrtAllocator>
StdAllocator< T, BaseAllocator >::StdAllocator ( )
inline

Definition at line 473 of file allocators.h.

◆ StdAllocator() [2/4]

template<typename T, typename BaseAllocator = CrtAllocator>
StdAllocator< T, BaseAllocator >::StdAllocator ( const StdAllocator< T, BaseAllocator > & rhs)
inline

Definition at line 478 of file allocators.h.

◆ StdAllocator() [3/4]

template<typename T, typename BaseAllocator = CrtAllocator>
template<typename U>
StdAllocator< T, BaseAllocator >::StdAllocator ( const StdAllocator< U, BaseAllocator > & rhs)
inline

Definition at line 484 of file allocators.h.

◆ StdAllocator() [4/4]

template<typename T, typename BaseAllocator = CrtAllocator>
StdAllocator< T, BaseAllocator >::StdAllocator ( const BaseAllocator & baseAllocator)
inline

Definition at line 501 of file allocators.h.

◆ ~StdAllocator()

template<typename T, typename BaseAllocator = CrtAllocator>
StdAllocator< T, BaseAllocator >::~StdAllocator ( )
inline

Definition at line 506 of file allocators.h.

Member Function Documentation

◆ address() [1/2]

template<typename T, typename BaseAllocator = CrtAllocator>
const_pointer StdAllocator< T, BaseAllocator >::address ( const_reference r) const
inline

Definition at line 559 of file allocators.h.

◆ address() [2/2]

template<typename T, typename BaseAllocator = CrtAllocator>
pointer StdAllocator< T, BaseAllocator >::address ( reference r) const
inline

Definition at line 555 of file allocators.h.

◆ allocate() [1/2]

template<typename T, typename BaseAllocator = CrtAllocator>
pointer StdAllocator< T, BaseAllocator >::allocate ( size_type n = 1,
const void * = 0 )
inline

Definition at line 591 of file allocators.h.

◆ allocate() [2/2]

template<typename T, typename BaseAllocator = CrtAllocator>
template<typename U>
U * StdAllocator< T, BaseAllocator >::allocate ( size_type n = 1,
const void * = 0 )
inline

Definition at line 581 of file allocators.h.

◆ construct()

template<typename T, typename BaseAllocator = CrtAllocator>
void StdAllocator< T, BaseAllocator >::construct ( pointer p,
const_reference r )
inline

Definition at line 569 of file allocators.h.

◆ deallocate() [1/2]

template<typename T, typename BaseAllocator = CrtAllocator>
void StdAllocator< T, BaseAllocator >::deallocate ( pointer p,
size_type n = 1 )
inline

Definition at line 595 of file allocators.h.

◆ deallocate() [2/2]

template<typename T, typename BaseAllocator = CrtAllocator>
template<typename U>
void StdAllocator< T, BaseAllocator >::deallocate ( U * p,
size_type n = 1 )
inline

Definition at line 586 of file allocators.h.

◆ destroy()

template<typename T, typename BaseAllocator = CrtAllocator>
void StdAllocator< T, BaseAllocator >::destroy ( pointer p)
inline

Definition at line 573 of file allocators.h.

◆ Free()

template<typename T, typename BaseAllocator = CrtAllocator>
void StdAllocator< T, BaseAllocator >::Free ( void * ptr)
inlinestatic

Definition at line 626 of file allocators.h.

◆ Malloc()

template<typename T, typename BaseAllocator = CrtAllocator>
void * StdAllocator< T, BaseAllocator >::Malloc ( size_t size)
inline

Definition at line 618 of file allocators.h.

◆ max_size()

template<typename T, typename BaseAllocator = CrtAllocator>
size_type StdAllocator< T, BaseAllocator >::max_size ( ) const
inline

Definition at line 564 of file allocators.h.

◆ operator!=()

template<typename T, typename BaseAllocator = CrtAllocator>
template<typename U>
bool StdAllocator< T, BaseAllocator >::operator!= ( const StdAllocator< U, BaseAllocator > & rhs) const
inline

Definition at line 610 of file allocators.h.

◆ operator==()

template<typename T, typename BaseAllocator = CrtAllocator>
template<typename U>
bool StdAllocator< T, BaseAllocator >::operator== ( const StdAllocator< U, BaseAllocator > & rhs) const
inline

Definition at line 605 of file allocators.h.

◆ Realloc()

template<typename T, typename BaseAllocator = CrtAllocator>
void * StdAllocator< T, BaseAllocator >::Realloc ( void * originalPtr,
size_t originalSize,
size_t newSize )
inline

Definition at line 622 of file allocators.h.

◆ StdAllocator

template<typename T, typename BaseAllocator = CrtAllocator>
template<typename, typename>
friend class StdAllocator
friend

Definition at line 633 of file allocators.h.

Member Data Documentation

◆ baseAllocator_

template<typename T, typename BaseAllocator = CrtAllocator>
BaseAllocator StdAllocator< T, BaseAllocator >::baseAllocator_
private

Definition at line 635 of file allocators.h.

◆ kNeedFree

template<typename T, typename BaseAllocator = CrtAllocator>
const bool StdAllocator< T, BaseAllocator >::kNeedFree = BaseAllocator::kNeedFree
static

rapidjson Allocator concept

Definition at line 616 of file allocators.h.

◆ kRefCounted

template<typename T, typename BaseAllocator = CrtAllocator>
const bool StdAllocator< T, BaseAllocator >::kRefCounted = internal::IsRefCounted<BaseAllocator>::Value
static

Definition at line 617 of file allocators.h.


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