template <typename Encoding, typename Allocator, typename StackAllocator>

class GenericDocument

Defined at line 2499 of file ../../third_party/rapidjson/include/rapidjson/document.h

A document for parsing JSON text as DOM.

Template Parameters

Encoding Encoding for both parsing and string storage.
Allocator Allocator for allocating memory for the DOM
StackAllocator Allocator for allocating memory for stack during parsing.

Public Methods

void GenericDocument<Encoding, Allocator, StackAllocator> (Type type, Allocator * allocator, size_t stackCapacity, StackAllocator * stackAllocator)

Constructor

Creates an empty document of specified type.

Parameters

type Mandatory type of object to create.
allocator Optional allocator for allocating memory.
stackCapacity Optional initial capacity of stack in bytes.
stackAllocator Optional allocator for allocating memory for stack.

Defined at line 2513 of file ../../third_party/rapidjson/include/rapidjson/document.h

void GenericDocument<Encoding, Allocator, StackAllocator> (Allocator * allocator, size_t stackCapacity, StackAllocator * stackAllocator)

Constructor

Creates an empty document which type is Null.

Parameters

allocator Optional allocator for allocating memory.
stackCapacity Optional initial capacity of stack in bytes.
stackAllocator Optional allocator for allocating memory for stack.

Defined at line 2526 of file ../../third_party/rapidjson/include/rapidjson/document.h

void GenericDocument<Encoding, Allocator, StackAllocator> (GenericDocument<Encoding, Allocator, StackAllocator> && rhs)

Move constructor in C++11

Defined at line 2535 of file ../../third_party/rapidjson/include/rapidjson/document.h

void ~GenericDocument<Encoding, Allocator, StackAllocator> ()

Defined at line 2548 of file ../../third_party/rapidjson/include/rapidjson/document.h

GenericDocument<Encoding, Allocator, StackAllocator> & operator= (GenericDocument<Encoding, Allocator, StackAllocator> && rhs)

Move assignment in C++11

Defined at line 2561 of file ../../third_party/rapidjson/include/rapidjson/document.h

GenericDocument<Encoding, Allocator, StackAllocator> & Swap (GenericDocument<Encoding, Allocator, StackAllocator> & rhs)

Exchange the contents of this document with those of another.

Parameters

rhs Another document.

Defined at line 2589 of file ../../third_party/rapidjson/include/rapidjson/document.h

template <typename Generator>
GenericDocument<Encoding, Allocator, StackAllocator> & Populate (Generator & g)

Populate this document by a generator which produces SAX events.

Parameters

g Generator functor which sends SAX events to the parameter.

Template Parameters

Generator A functor with bool f(Handler) prototype.

Returns

The document itself for fluent API.

Defined at line 2622 of file ../../third_party/rapidjson/include/rapidjson/document.h

template <unsigned parseFlags, typename SourceEncoding, typename InputStream>
GenericDocument<Encoding, Allocator, StackAllocator> & ParseStream (InputStream & is)

Parse JSON text from an input stream (with Encoding conversion)

Parameters

is Input stream to be parsed.

Template Parameters

parseFlags Combination of
SourceEncoding Encoding of input stream
InputStream Type of input stream, implementing Stream concept

Returns

The document itself for fluent API.

Defined at line 2642 of file ../../third_party/rapidjson/include/rapidjson/document.h

template <unsigned parseFlags, typename InputStream>
GenericDocument<Encoding, Allocator, StackAllocator> & ParseStream (InputStream & is)

Parse JSON text from an input stream

Parameters

is Input stream to be parsed.

Template Parameters

parseFlags Combination of
InputStream Type of input stream, implementing Stream concept

Returns

The document itself for fluent API.

Defined at line 2661 of file ../../third_party/rapidjson/include/rapidjson/document.h

template <typename InputStream>
GenericDocument<Encoding, Allocator, StackAllocator> & ParseStream (InputStream & is)

Parse JSON text from an input stream (with

Parameters

is Input stream to be parsed.

Template Parameters

InputStream Type of input stream, implementing Stream concept

Returns

The document itself for fluent API.

Defined at line 2671 of file ../../third_party/rapidjson/include/rapidjson/document.h

template <unsigned parseFlags>
GenericDocument<Encoding, Allocator, StackAllocator> & ParseInsitu (Ch * str)

Parse JSON text from a mutable string

Parameters

str Mutable zero-terminated string to be parsed.

Template Parameters

parseFlags Combination of

Returns

The document itself for fluent API.

Defined at line 2685 of file ../../third_party/rapidjson/include/rapidjson/document.h

GenericDocument<Encoding, Allocator, StackAllocator> & ParseInsitu (Ch * str)

Parse JSON text from a mutable string (with

Parameters

str Mutable zero-terminated string to be parsed.

Returns

The document itself for fluent API.

Defined at line 2694 of file ../../third_party/rapidjson/include/rapidjson/document.h

template <unsigned parseFlags, typename SourceEncoding>
GenericDocument<Encoding, Allocator, StackAllocator> & Parse (const typename SourceEncoding::Ch * str)

Parse JSON text from a read-only string (with Encoding conversion)

Parameters

str Read-only zero-terminated string to be parsed.

Template Parameters

parseFlags Combination of (must not contain
SourceEncoding Transcoding from input Encoding

Defined at line 2708 of file ../../third_party/rapidjson/include/rapidjson/document.h

template <unsigned parseFlags>
GenericDocument<Encoding, Allocator, StackAllocator> & Parse (const Ch * str)

Parse JSON text from a read-only string

Parameters

str Read-only zero-terminated string to be parsed.

Template Parameters

parseFlags Combination of (must not contain

Defined at line 2719 of file ../../third_party/rapidjson/include/rapidjson/document.h

GenericDocument<Encoding, Allocator, StackAllocator> & Parse (const Ch * str)

Parse JSON text from a read-only string (with

Parameters

str Read-only zero-terminated string to be parsed.

Defined at line 2726 of file ../../third_party/rapidjson/include/rapidjson/document.h

template <unsigned parseFlags, typename SourceEncoding>
GenericDocument<Encoding, Allocator, StackAllocator> & Parse (const typename SourceEncoding::Ch * str, size_t length)

Defined at line 2731 of file ../../third_party/rapidjson/include/rapidjson/document.h

template <unsigned parseFlags>
GenericDocument<Encoding, Allocator, StackAllocator> & Parse (const Ch * str, size_t length)

Defined at line 2740 of file ../../third_party/rapidjson/include/rapidjson/document.h

GenericDocument<Encoding, Allocator, StackAllocator> & Parse (const Ch * str, size_t length)

Defined at line 2744 of file ../../third_party/rapidjson/include/rapidjson/document.h

template <unsigned parseFlags, typename SourceEncoding>
GenericDocument<Encoding, Allocator, StackAllocator> & Parse (const std::basic_string<typename SourceEncoding::Ch> & str)

Defined at line 2750 of file ../../third_party/rapidjson/include/rapidjson/document.h

template <unsigned parseFlags>
GenericDocument<Encoding, Allocator, StackAllocator> & Parse (const std::basic_string<Ch> & str)

Defined at line 2756 of file ../../third_party/rapidjson/include/rapidjson/document.h

GenericDocument<Encoding, Allocator, StackAllocator> & Parse (const std::basic_string<Ch> & str)

Defined at line 2760 of file ../../third_party/rapidjson/include/rapidjson/document.h

bool HasParseError ()

Whether a parse error has occurred in the last parsing.

Defined at line 2771 of file ../../third_party/rapidjson/include/rapidjson/document.h

ParseErrorCode GetParseError ()

Get the

of last parsing.

Defined at line 2774 of file ../../third_party/rapidjson/include/rapidjson/document.h

size_t GetErrorOffset ()

Get the position of last parsing error in input, 0 otherwise.

Defined at line 2777 of file ../../third_party/rapidjson/include/rapidjson/document.h

ParseResult operator ParseResult ()

Defined at line 2791 of file ../../third_party/rapidjson/include/rapidjson/document.h

Allocator & GetAllocator ()

Get the allocator of this document.

Defined at line 2795 of file ../../third_party/rapidjson/include/rapidjson/document.h

size_t GetStackCapacity ()

Get the capacity of stack in bytes.

Defined at line 2801 of file ../../third_party/rapidjson/include/rapidjson/document.h

bool Null ()

Implementation of Handler

Defined at line 2820 of file ../../third_party/rapidjson/include/rapidjson/document.h

bool Bool (bool b)

Defined at line 2821 of file ../../third_party/rapidjson/include/rapidjson/document.h

bool Int (int i)

Defined at line 2822 of file ../../third_party/rapidjson/include/rapidjson/document.h

bool Uint (unsigned int i)

Defined at line 2823 of file ../../third_party/rapidjson/include/rapidjson/document.h

bool Int64 (int64_t i)

Defined at line 2824 of file ../../third_party/rapidjson/include/rapidjson/document.h

bool Uint64 (uint64_t i)

Defined at line 2825 of file ../../third_party/rapidjson/include/rapidjson/document.h

bool Double (double d)

Defined at line 2826 of file ../../third_party/rapidjson/include/rapidjson/document.h

bool RawNumber (const Ch * str, SizeType length, bool copy)

Defined at line 2828 of file ../../third_party/rapidjson/include/rapidjson/document.h

bool String (const Ch * str, SizeType length, bool copy)

Defined at line 2836 of file ../../third_party/rapidjson/include/rapidjson/document.h

bool StartObject ()

Defined at line 2844 of file ../../third_party/rapidjson/include/rapidjson/document.h

bool Key (const Ch * str, SizeType length, bool copy)

Defined at line 2846 of file ../../third_party/rapidjson/include/rapidjson/document.h

bool EndObject (SizeType memberCount)

Defined at line 2848 of file ../../third_party/rapidjson/include/rapidjson/document.h

bool StartArray ()

Defined at line 2854 of file ../../third_party/rapidjson/include/rapidjson/document.h

bool EndArray (SizeType elementCount)

Defined at line 2856 of file ../../third_party/rapidjson/include/rapidjson/document.h

Friends

template <typename, typename>
class GenericValue
template <typename Encodingtypename Allocatortypename StackAllocator>
void GenericDocument (GenericDocument<Encoding, Allocator, StackAllocator> & aGenericDocument<Encoding, Allocator, StackAllocator> & b)