main RapidJSON namespace More...
Classes | |
struct | ASCII |
ASCII encoding. More... | |
struct | AutoUTF |
Dynamically select encoding according to stream's runtime-specified UTF encoding type. More... | |
class | AutoUTFInputStream |
Input stream wrapper with dynamically bound encoding and automatic encoding detection. More... | |
class | AutoUTFOutputStream |
Output stream wrapper with dynamically bound encoding and automatic encoding detection. More... | |
struct | BaseReaderHandler |
Default implementation of Handler. More... | |
class | BasicIStreamWrapper |
Wrapper of std::basic_istream into RapidJSON's Stream concept. More... | |
class | BasicOStreamWrapper |
Wrapper of std::basic_ostream into RapidJSON's Stream concept. More... | |
class | CrtAllocator |
C-runtime library allocator. More... | |
class | EncodedInputStream |
Input byte stream wrapper with a statically bound encoding. More... | |
class | EncodedInputStream< UTF8<>, MemoryStream > |
Specialized for UTF8 MemoryStream. More... | |
class | EncodedOutputStream |
Output byte stream wrapper with statically bound encoding. More... | |
class | FileReadStream |
File byte stream for input using fread(). More... | |
class | FileWriteStream |
Wrapper of C file stream for input using fread(). More... | |
class | GenericArray |
Helper class for accessing Value of array type. More... | |
class | GenericDocument |
A document for parsing JSON text as DOM. More... | |
struct | GenericInsituStringStream |
A read-write string stream. More... | |
struct | GenericMember |
Name-value pair in a JSON object value. More... | |
class | GenericMemberIterator |
(Constant) member iterator for a JSON object value More... | |
struct | GenericMemoryBuffer |
Represents an in-memory output byte stream. More... | |
class | GenericObject |
Helper class for accessing Value of object type. More... | |
class | GenericPointer |
Represents a JSON Pointer. Use Pointer for UTF8 encoding and default allocator. More... | |
class | GenericReader |
SAX-style JSON parser. Use Reader for UTF8 encoding and default allocator. More... | |
class | GenericSchemaDocument |
JSON schema document. More... | |
class | GenericSchemaValidator |
JSON Schema Validator. More... | |
class | GenericStringBuffer |
Represents an in-memory output stream. More... | |
struct | GenericStringRef |
Reference to a constant string (not taking a copy) More... | |
struct | GenericStringStream |
Read-only string stream. More... | |
class | GenericValue |
Represents a JSON value. Use Value for UTF8 encoding and default allocator. More... | |
class | IGenericRemoteSchemaDocumentProvider |
class | MemoryPoolAllocator |
Default memory allocator used by the parser and DOM. More... | |
struct | MemoryStream |
Represents an in-memory input byte stream. More... | |
struct | ParseResult |
Result of parsing (wraps ParseErrorCode) More... | |
class | PrettyWriter |
Writer with indentation and spacing. More... | |
class | SchemaValidatingReader |
A helper class for parsing with validation. More... | |
struct | StreamTraits |
Provides additional information for stream. More... | |
struct | StreamTraits< GenericInsituStringStream< Encoding > > |
struct | StreamTraits< GenericStringStream< Encoding > > |
struct | Transcoder |
Encoding conversion. More... | |
struct | Transcoder< Encoding, Encoding > |
Specialization of Transcoder with same source and target encoding. More... | |
struct | UTF16 |
UTF-16 encoding. More... | |
struct | UTF16BE |
UTF-16 big endian encoding. More... | |
struct | UTF16LE |
UTF-16 little endian encoding. More... | |
struct | UTF32 |
UTF-32 encoding. More... | |
struct | UTF32BE |
UTF-32 big endian encoding. More... | |
struct | UTF32LE |
UTF-32 little endian enocoding. More... | |
struct | UTF8 |
UTF-8 encoding. More... | |
class | Writer |
JSON writer. More... | |
Typedefs | |
typedef unsigned | SizeType |
Size type (for string lengths, array sizes, etc.) More... | |
typedef GenericValue< UTF8<> > | Value |
GenericValue with UTF8 encoding. | |
typedef GenericDocument< UTF8<> > | Document |
GenericDocument with UTF8 encoding. | |
typedef GenericStringStream< UTF8< char > > | StringStream |
String stream with UTF8 encoding. | |
typedef GenericInsituStringStream< UTF8< char > > | InsituStringStream |
Insitu string stream with UTF8 encoding. | |
typedef GenericStringBuffer< UTF8< char >, CrtAllocator > | StringBuffer |
String buffer with UTF8 encoding. | |
typedef GenericMemoryBuffer< CrtAllocator > | MemoryBuffer |
typedef GenericReader< UTF8< char >, UTF8< char >, CrtAllocator > | Reader |
Reader with UTF8 encoding and default allocator. | |
typedef GenericPointer< Value, CrtAllocator > | Pointer |
GenericPointer for Value (UTF-8, default allocator). | |
typedef GenericSchemaDocument< Value, CrtAllocator > | SchemaDocument |
GenericSchemaDocument using Value type. | |
typedef IGenericRemoteSchemaDocumentProvider< SchemaDocument > | IRemoteSchemaDocumentProvider |
IGenericRemoteSchemaDocumentProvider using SchemaDocument. | |
typedef GenericSchemaValidator< SchemaDocument, BaseReaderHandler< UTF8< char >, void >, CrtAllocator > | SchemaValidator |
typedef BasicIStreamWrapper< std::istream > | IStreamWrapper |
typedef BasicIStreamWrapper< std::wistream > | WIStreamWrapper |
typedef BasicOStreamWrapper< std::ostream > | OStreamWrapper |
typedef BasicOStreamWrapper< std::wostream > | WOStreamWrapper |
Functions | |
template<typename CharType > | |
GenericStringRef< CharType > | StringRef (const CharType *str) |
Mark a character pointer as constant string. More... | |
template<typename CharType > | |
GenericStringRef< CharType > | StringRef (const CharType *str, size_t length) |
Mark a character pointer as constant string. More... | |
template<typename CharType > | |
GenericStringRef< CharType > | StringRef (const std::basic_string< CharType > &str) |
Mark a string object as constant string. More... | |
template<typename Stream > | |
void | PutUnsafe (Stream &stream, typename Stream::Ch c) |
Write character to a stream, presuming buffer is reserved. | |
const RAPIDJSON_ERROR_CHARTYPE * | GetParseError_En (ParseErrorCode parseErrorCode) |
Maps error code of parsing into error message. More... | |
template<> | |
void | PutN (FileWriteStream &stream, char c, size_t n) |
Implement specialized version of PutN() with memset() for better performance. | |
template<> | |
void | PutN (MemoryBuffer &memoryBuffer, char c, size_t n) |
Implement specialized version of PutN() with memset() for better performance. | |
template<typename InputStream > | |
void | SkipWhitespace (InputStream &is) |
Skip the JSON white spaces in a stream. More... | |
const char * | SkipWhitespace (const char *p, const char *end) |
template<> | |
void | SkipWhitespace (InsituStringStream &is) |
Template function specialization for InsituStringStream. | |
template<> | |
void | SkipWhitespace (StringStream &is) |
Template function specialization for StringStream. | |
template<> | |
void | SkipWhitespace (EncodedInputStream< UTF8<>, MemoryStream > &is) |
template<typename Stream > | |
void | PutReserve (Stream &stream, size_t count) |
Reserve n characters for writing to a stream. | |
template<typename Stream , typename Ch > | |
void | PutN (Stream &stream, Ch c, size_t n) |
Put N copies of a character to a stream. | |
template<typename Encoding , typename Allocator > | |
void | PutReserve (GenericStringBuffer< Encoding, Allocator > &stream, size_t count) |
template<typename Encoding , typename Allocator > | |
void | PutUnsafe (GenericStringBuffer< Encoding, Allocator > &stream, typename Encoding::Ch c) |
template<> | |
void | PutN (GenericStringBuffer< UTF8<> > &stream, char c, size_t n) |
Implement specialized version of PutN() with memset() for better performance. | |
Variables | |
const typedef RAPIDJSON_ERROR_CHARTYPE *(* | GetParseErrorFunc )(ParseErrorCode) |
Function pointer type of GetParseError(). More... | |
Helper functions for GenericPointer | |
const GenericPointer< typename T::ValueType > & | pointer |
const GenericPointer< typename T::ValueType > T2 | defaultValue |
const GenericPointer< typename T::ValueType > T2 T::AllocatorType & | a |
const CharType(& | source )[N] |
const GenericPointer< typename T::ValueType > T2 | value |
template<typename T > | |
T::ValueType & | CreateValueByPointer (T &root, const GenericPointer< typename T::ValueType > &pointer, typename T::AllocatorType &a) |
template<typename T , typename CharType , size_t N> | |
T::ValueType & | CreateValueByPointer (T &root, const CharType(&source)[N], typename T::AllocatorType &a) |
template<typename DocumentType > | |
DocumentType::ValueType & | CreateValueByPointer (DocumentType &document, const GenericPointer< typename DocumentType::ValueType > &pointer) |
template<typename DocumentType , typename CharType , size_t N> | |
DocumentType::ValueType & | CreateValueByPointer (DocumentType &document, const CharType(&source)[N]) |
template<typename T > | |
T::ValueType * | GetValueByPointer (T &root, const GenericPointer< typename T::ValueType > &pointer, size_t *unresolvedTokenIndex=0) |
template<typename T > | |
const T::ValueType * | GetValueByPointer (const T &root, const GenericPointer< typename T::ValueType > &pointer, size_t *unresolvedTokenIndex=0) |
template<typename T , typename CharType , size_t N> | |
T::ValueType * | GetValueByPointer (T &root, const CharType(&source)[N], size_t *unresolvedTokenIndex=0) |
template<typename T , typename CharType , size_t N> | |
const T::ValueType * | GetValueByPointer (const T &root, const CharType(&source)[N], size_t *unresolvedTokenIndex=0) |
template<typename T > | |
T::ValueType & | GetValueByPointerWithDefault (T &root, const GenericPointer< typename T::ValueType > &pointer, const typename T::ValueType &defaultValue, typename T::AllocatorType &a) |
template<typename T > | |
T::ValueType & | GetValueByPointerWithDefault (T &root, const GenericPointer< typename T::ValueType > &pointer, const typename T::Ch *defaultValue, typename T::AllocatorType &a) |
template<typename T > | |
T::ValueType & | GetValueByPointerWithDefault (T &root, const GenericPointer< typename T::ValueType > &pointer, const std::basic_string< typename T::Ch > &defaultValue, typename T::AllocatorType &a) |
template<typename T , typename T2 > | |
RAPIDJSON_DISABLEIF_RETURN ((internal::OrExpr< internal::IsPointer< T2 >, internal::IsGenericValue< T2 > >),(typename T::ValueType &)) GetValueByPointerWithDefault(T &root | |
template<typename T , typename CharType , size_t N> | |
T::ValueType & | GetValueByPointerWithDefault (T &root, const CharType(&source)[N], const typename T::ValueType &defaultValue, typename T::AllocatorType &a) |
template<typename T , typename CharType , size_t N> | |
T::ValueType & | GetValueByPointerWithDefault (T &root, const CharType(&source)[N], const typename T::Ch *defaultValue, typename T::AllocatorType &a) |
template<typename T , typename CharType , size_t N> | |
T::ValueType & | GetValueByPointerWithDefault (T &root, const CharType(&source)[N], const std::basic_string< typename T::Ch > &defaultValue, typename T::AllocatorType &a) |
template<typename T , typename CharType , size_t N, typename T2 > | |
RAPIDJSON_DISABLEIF_RETURN ((internal::OrExpr< internal::IsPointer< T2 >, internal::IsGenericValue< T2 > >),(typename T::ValueType &)) GetValueByPointerWithDefault(T &root | |
template<typename DocumentType > | |
DocumentType::ValueType & | GetValueByPointerWithDefault (DocumentType &document, const GenericPointer< typename DocumentType::ValueType > &pointer, const typename DocumentType::ValueType &defaultValue) |
template<typename DocumentType > | |
DocumentType::ValueType & | GetValueByPointerWithDefault (DocumentType &document, const GenericPointer< typename DocumentType::ValueType > &pointer, const typename DocumentType::Ch *defaultValue) |
template<typename DocumentType > | |
DocumentType::ValueType & | GetValueByPointerWithDefault (DocumentType &document, const GenericPointer< typename DocumentType::ValueType > &pointer, const std::basic_string< typename DocumentType::Ch > &defaultValue) |
template<typename DocumentType , typename T2 > | |
RAPIDJSON_DISABLEIF_RETURN ((internal::OrExpr< internal::IsPointer< T2 >, internal::IsGenericValue< T2 > >),(typename DocumentType::ValueType &)) GetValueByPointerWithDefault(DocumentType &document | |
template<typename DocumentType , typename CharType , size_t N> | |
DocumentType::ValueType & | GetValueByPointerWithDefault (DocumentType &document, const CharType(&source)[N], const typename DocumentType::ValueType &defaultValue) |
template<typename DocumentType , typename CharType , size_t N> | |
DocumentType::ValueType & | GetValueByPointerWithDefault (DocumentType &document, const CharType(&source)[N], const typename DocumentType::Ch *defaultValue) |
template<typename DocumentType , typename CharType , size_t N> | |
DocumentType::ValueType & | GetValueByPointerWithDefault (DocumentType &document, const CharType(&source)[N], const std::basic_string< typename DocumentType::Ch > &defaultValue) |
template<typename DocumentType , typename CharType , size_t N, typename T2 > | |
RAPIDJSON_DISABLEIF_RETURN ((internal::OrExpr< internal::IsPointer< T2 >, internal::IsGenericValue< T2 > >),(typename DocumentType::ValueType &)) GetValueByPointerWithDefault(DocumentType &document | |
template<typename T > | |
T::ValueType & | SetValueByPointer (T &root, const GenericPointer< typename T::ValueType > &pointer, typename T::ValueType &value, typename T::AllocatorType &a) |
template<typename T > | |
T::ValueType & | SetValueByPointer (T &root, const GenericPointer< typename T::ValueType > &pointer, const typename T::ValueType &value, typename T::AllocatorType &a) |
template<typename T > | |
T::ValueType & | SetValueByPointer (T &root, const GenericPointer< typename T::ValueType > &pointer, const typename T::Ch *value, typename T::AllocatorType &a) |
template<typename T > | |
T::ValueType & | SetValueByPointer (T &root, const GenericPointer< typename T::ValueType > &pointer, const std::basic_string< typename T::Ch > &value, typename T::AllocatorType &a) |
template<typename T , typename CharType , size_t N> | |
T::ValueType & | SetValueByPointer (T &root, const CharType(&source)[N], typename T::ValueType &value, typename T::AllocatorType &a) |
template<typename T , typename CharType , size_t N> | |
T::ValueType & | SetValueByPointer (T &root, const CharType(&source)[N], const typename T::ValueType &value, typename T::AllocatorType &a) |
template<typename T , typename CharType , size_t N> | |
T::ValueType & | SetValueByPointer (T &root, const CharType(&source)[N], const typename T::Ch *value, typename T::AllocatorType &a) |
template<typename T , typename CharType , size_t N> | |
T::ValueType & | SetValueByPointer (T &root, const CharType(&source)[N], const std::basic_string< typename T::Ch > &value, typename T::AllocatorType &a) |
template<typename DocumentType > | |
DocumentType::ValueType & | SetValueByPointer (DocumentType &document, const GenericPointer< typename DocumentType::ValueType > &pointer, typename DocumentType::ValueType &value) |
template<typename DocumentType > | |
DocumentType::ValueType & | SetValueByPointer (DocumentType &document, const GenericPointer< typename DocumentType::ValueType > &pointer, const typename DocumentType::ValueType &value) |
template<typename DocumentType > | |
DocumentType::ValueType & | SetValueByPointer (DocumentType &document, const GenericPointer< typename DocumentType::ValueType > &pointer, const typename DocumentType::Ch *value) |
template<typename DocumentType > | |
DocumentType::ValueType & | SetValueByPointer (DocumentType &document, const GenericPointer< typename DocumentType::ValueType > &pointer, const std::basic_string< typename DocumentType::Ch > &value) |
template<typename DocumentType , typename CharType , size_t N> | |
DocumentType::ValueType & | SetValueByPointer (DocumentType &document, const CharType(&source)[N], typename DocumentType::ValueType &value) |
template<typename DocumentType , typename CharType , size_t N> | |
DocumentType::ValueType & | SetValueByPointer (DocumentType &document, const CharType(&source)[N], const typename DocumentType::ValueType &value) |
template<typename DocumentType , typename CharType , size_t N> | |
DocumentType::ValueType & | SetValueByPointer (DocumentType &document, const CharType(&source)[N], const typename DocumentType::Ch *value) |
template<typename DocumentType , typename CharType , size_t N> | |
DocumentType::ValueType & | SetValueByPointer (DocumentType &document, const CharType(&source)[N], const std::basic_string< typename DocumentType::Ch > &value) |
template<typename T > | |
T::ValueType & | SwapValueByPointer (T &root, const GenericPointer< typename T::ValueType > &pointer, typename T::ValueType &value, typename T::AllocatorType &a) |
template<typename T , typename CharType , size_t N> | |
T::ValueType & | SwapValueByPointer (T &root, const CharType(&source)[N], typename T::ValueType &value, typename T::AllocatorType &a) |
template<typename DocumentType > | |
DocumentType::ValueType & | SwapValueByPointer (DocumentType &document, const GenericPointer< typename DocumentType::ValueType > &pointer, typename DocumentType::ValueType &value) |
template<typename DocumentType , typename CharType , size_t N> | |
DocumentType::ValueType & | SwapValueByPointer (DocumentType &document, const CharType(&source)[N], typename DocumentType::ValueType &value) |
template<typename T > | |
bool | EraseValueByPointer (T &root, const GenericPointer< typename T::ValueType > &pointer) |
template<typename T , typename CharType , size_t N> | |
bool | EraseValueByPointer (T &root, const CharType(&source)[N]) |
main RapidJSON namespace
typedef unsigned rapidjson::SizeType |
Size type (for string lengths, array sizes, etc.)
RapidJSON uses 32-bit array/string indices even on 64-bit platforms, instead of using size_t
. Users may override the SizeType by defining RAPIDJSON_NO_SIZETYPEDEFINE.
enum rapidjson::ParseFlag |
Combination of parseFlags.
Combination of PrettyWriter format flags.
Enumerator | |
---|---|
kFormatDefault | Default pretty formatting. |
kFormatSingleLineArray | Format arrays on a single line. |
enum rapidjson::Type |
enum rapidjson::UTFType |
enum rapidjson::WriteFlag |
void rapidjson::SkipWhitespace | ( | InputStream & | is | ) |
Skip the JSON white spaces in a stream.
is | A input stream for skipping white spaces. |
|
inline |
Mark a character pointer as constant string.
Mark a plain character pointer as a "string literal". This function can be used to avoid copying a character string to be referenced as a value in a JSON GenericValue object, if the string's lifetime is known to be valid long enough.
CharType | Character type of the string |
str | Constant string, lifetime assumed to be longer than the use of the string in e.g. a GenericValue |
|
inline |
Mark a character pointer as constant string.
Mark a plain character pointer as a "string literal". This function can be used to avoid copying a character string to be referenced as a value in a JSON GenericValue object, if the string's lifetime is known to be valid long enough.
This version has better performance with supplied length, and also supports string containing null characters.
CharType | character type of the string |
str | Constant string, lifetime assumed to be longer than the use of the string in e.g. a GenericValue |
length | The length of source string. |
|
inline |
Mark a string object as constant string.
Mark a string object (e.g. std::string
) as a "string literal". This function can be used to avoid copying a string to be referenced as a value in a JSON GenericValue object, if the string's lifetime is known to be valid long enough.
CharType | character type of the string |
str | Constant string, lifetime assumed to be longer than the use of the string in e.g. a GenericValue |
const GenericPointer< typename T::ValueType > T2 T::AllocatorType & rapidjson::a |
const GenericPointer< typename DocumentType::ValueType > T2 rapidjson::defaultValue |
const GenericPointer< typename DocumentType::ValueType > T2 rapidjson::value |