JsonCpp project page Classes Namespace JsonCpp home page

Classes | Public Types | Public Member Functions | List of all members
Json::SecureAllocator< T > Class Template Reference

#include <json/allocator.h>

Classes

struct  rebind
 

Public Types

using value_type = T
 
using pointer = T *
 
using const_pointer = const T *
 
using reference = T &
 
using const_reference = const T &
 
using size_type = std::size_t
 
using difference_type = std::ptrdiff_t
 

Public Member Functions

pointer allocate (size_type n)
 Allocate memory for N items using the standard allocator. More...
 
void deallocate (volatile pointer p, size_type n)
 Release memory which was allocated for N items at pointer P. More...
 
template<typename... Args>
void construct (pointer p, Args &&... args)
 Construct an item in-place at pointer P. More...
 
size_type max_size () const
 
pointer address (reference x) const
 
const_pointer address (const_reference x) const
 
void destroy (pointer p)
 Destroy an item in-place at pointer P. More...
 
 SecureAllocator ()
 
template<typename U >
 SecureAllocator (const SecureAllocator< U > &)
 

Detailed Description

template<typename T>
class Json::SecureAllocator< T >

Definition at line 15 of file allocator.h.

Member Typedef Documentation

◆ const_pointer

template<typename T >
using Json::SecureAllocator< T >::const_pointer = const T*

Definition at line 20 of file allocator.h.

◆ const_reference

template<typename T >
using Json::SecureAllocator< T >::const_reference = const T&

Definition at line 22 of file allocator.h.

◆ difference_type

template<typename T >
using Json::SecureAllocator< T >::difference_type = std::ptrdiff_t

Definition at line 24 of file allocator.h.

◆ pointer

template<typename T >
using Json::SecureAllocator< T >::pointer = T*

Definition at line 19 of file allocator.h.

◆ reference

template<typename T >
using Json::SecureAllocator< T >::reference = T&

Definition at line 21 of file allocator.h.

◆ size_type

template<typename T >
using Json::SecureAllocator< T >::size_type = std::size_t

Definition at line 23 of file allocator.h.

◆ value_type

template<typename T >
using Json::SecureAllocator< T >::value_type = T

Definition at line 18 of file allocator.h.

Constructor & Destructor Documentation

◆ SecureAllocator() [1/2]

template<typename T >
Json::SecureAllocator< T >::SecureAllocator ( )
inline

Definition at line 70 of file allocator.h.

◆ SecureAllocator() [2/2]

template<typename T >
template<typename U >
Json::SecureAllocator< T >::SecureAllocator ( const SecureAllocator< U > &  )
inline

Definition at line 71 of file allocator.h.

Member Function Documentation

◆ address() [1/2]

template<typename T >
const_pointer Json::SecureAllocator< T >::address ( const_reference  x) const
inline

Definition at line 59 of file allocator.h.

◆ address() [2/2]

template<typename T >
pointer Json::SecureAllocator< T >::address ( reference  x) const
inline

Definition at line 57 of file allocator.h.

◆ allocate()

template<typename T >
pointer Json::SecureAllocator< T >::allocate ( size_type  n)
inline

Allocate memory for N items using the standard allocator.

Definition at line 29 of file allocator.h.

◆ construct()

template<typename T >
template<typename... Args>
void Json::SecureAllocator< T >::construct ( pointer  p,
Args &&...  args 
)
inline

Construct an item in-place at pointer P.

Definition at line 50 of file allocator.h.

◆ deallocate()

template<typename T >
void Json::SecureAllocator< T >::deallocate ( volatile pointer  p,
size_type  n 
)
inline

Release memory which was allocated for N items at pointer P.

The memory block is filled with zeroes before being released. The pointer argument is tagged as "volatile" to prevent the compiler optimizing out this critical step.

Definition at line 41 of file allocator.h.

◆ destroy()

template<typename T >
void Json::SecureAllocator< T >::destroy ( pointer  p)
inline

Destroy an item in-place at pointer P.

Definition at line 64 of file allocator.h.

◆ max_size()

template<typename T >
size_type Json::SecureAllocator< T >::max_size ( ) const
inline

Definition at line 55 of file allocator.h.


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