6 #ifndef JSON_ALLOCATOR_H_INCLUDED
7 #define JSON_ALLOCATOR_H_INCLUDED
31 return static_cast<pointer>(::operator
new(n *
sizeof(T)));
41 memset_s(p, n *
sizeof(T), 0, n *
sizeof(T));
51 ::new (static_cast<void*>(p)) T(std::forward<Args>(args)...);
74 template <
typename T,
typename U>
79 template <
typename T,
typename U>
88 #endif // JSON_ALLOCATOR_H_INCLUDED
void construct(pointer p, Args &&...args)
Construct an item in-place at pointer P.
pointer address(reference x) const
const T & const_reference
void deallocate(pointer p, size_type n)
Release memory which was allocated for N items at pointer P.
const_pointer address(const_reference x) const
pointer allocate(size_type n)
Allocate memory for N items using the standard allocator.
SecureAllocator(const SecureAllocator< U > &)
void destroy(pointer p)
Destroy an item in-place at pointer P.
JSON (JavaScript Object Notation).
bool operator==(const SecureAllocator< T > &, const SecureAllocator< U > &)
size_type max_size() const
std::ptrdiff_t difference_type
bool operator!=(const SecureAllocator< T > &, const SecureAllocator< U > &)