JSON (JavaScript Object Notation). More...
Classes | |
class | BatchAllocator |
class | FastWriter |
Outputs a Value in JSON format without formatting (not human friendly). More... | |
class | Features |
Configuration passed to reader and writer. This configuration object can be used to force the Reader or Writer to behave in a standard conforming way. More... | |
class | Path |
Experimental and untested: represents a "path" to access a node. More... | |
class | PathArgument |
Experimental and untested: represents an element of the "path" to access a node. More... | |
class | Reader |
Unserialize a JSON document into a Value. More... | |
class | StaticString |
Lightweight wrapper to tag static string. More... | |
class | StyledStreamWriter |
Writes a Value in JSON format in a human friendly way, to a stream rather than to a string. More... | |
class | StyledWriter |
Writes a Value in JSON format in a human friendly way. More... | |
class | Value |
Represents a JSON value. More... | |
class | ValueConstIterator |
const iterator for object and array value. More... | |
class | ValueIterator |
Iterator for object and array value. More... | |
class | ValueIteratorBase |
base class for Value iterators. More... | |
class | Writer |
Abstract class for writers. More... | |
Typedefs | |
typedef unsigned int | ArrayIndex |
typedef int | Int |
typedef long long int | Int64 |
typedef Int64 | LargestInt |
typedef UInt64 | LargestUInt |
typedef unsigned int | UInt |
typedef unsigned long long int | UInt64 |
typedef char | UIntToStringBuffer [uintToStringBufferSize] |
Enumerations | |
enum | { uintToStringBufferSize = 3*sizeof(LargestUInt)+1 } |
enum | CommentPlacement { commentBefore = 0, commentAfterOnSameLine, commentAfter, numberOfCommentPlacement } |
enum | ValueType { nullValue = 0, intValue, uintValue, realValue, stringValue, booleanValue, arrayValue, objectValue } |
Type of the value held by a Value object. More... | |
Functions | |
static std::string | codePointToUTF8 (unsigned int cp) |
Converts a unicode code-point to UTF-8. | |
static bool | containsControlCharacter (const char *str) |
static bool | containsNewLine (Reader::Location begin, Reader::Location end) |
static char * | duplicateStringValue (const char *value, unsigned int length=unknown) |
static bool | in (Reader::Char c, Reader::Char c1, Reader::Char c2, Reader::Char c3, Reader::Char c4) |
static bool | in (Reader::Char c, Reader::Char c1, Reader::Char c2, Reader::Char c3, Reader::Char c4, Reader::Char c5) |
static bool | isControlCharacter (char ch) |
Returns true if ch is a control character (in range [0,32[). | |
std::ostream & | operator<< (std::ostream &, const Value &root) |
Output using the StyledStreamWriter. | |
std::istream & | operator>> (std::istream &, Value &) |
Read from 'sin' into 'root'. | |
static void | releaseStringValue (char *value) |
static void | uintToString (LargestUInt value, char *¤t) |
std::string JSON_API | valueToQuotedString (const char *value) |
std::string JSON_API | valueToString (Int value) |
std::string JSON_API | valueToString (UInt value) |
std::string JSON_API | valueToString (LargestInt value) |
std::string JSON_API | valueToString (LargestUInt value) |
std::string JSON_API | valueToString (double value) |
std::string JSON_API | valueToString (bool value) |
Variables | |
static const unsigned int | unknown = (unsigned)-1 |
Unknown size marker. |
JSON (JavaScript Object Notation).
typedef unsigned int Json::ArrayIndex |
Definition at line 218 of file json-forwards.h.
typedef int Json::Int |
Definition at line 159 of file json-forwards.h.
typedef long long int Json::Int64 |
Definition at line 171 of file json-forwards.h.
typedef Int64 Json::LargestInt |
Definition at line 174 of file json-forwards.h.
typedef UInt64 Json::LargestUInt |
Definition at line 175 of file json-forwards.h.
typedef unsigned int Json::UInt |
Definition at line 160 of file json-forwards.h.
typedef unsigned long long int Json::UInt64 |
Definition at line 172 of file json-forwards.h.
typedef char Json::UIntToStringBuffer[uintToStringBufferSize] |
Definition at line 152 of file jsoncpp.cpp.
anonymous enum |
uintToStringBufferSize |
Constant that specify the size of the buffer that must be passed to uintToString. |
Definition at line 146 of file jsoncpp.cpp.
enum Json::ValueType |
Type of the value held by a Value object.
static std::string Json::codePointToUTF8 | ( | unsigned int | cp | ) | [inline, static] |
Converts a unicode code-point to UTF-8.
Definition at line 101 of file jsoncpp.cpp.
static bool Json::containsControlCharacter | ( | const char * | str | ) | [static] |
Definition at line 3407 of file jsoncpp.cpp.
static bool Json::containsNewLine | ( | Reader::Location | begin, |
Reader::Location | end | ||
) | [static] |
Definition at line 257 of file jsoncpp.cpp.
static char* Json::duplicateStringValue | ( | const char * | value, |
unsigned int | length = unknown |
||
) | [inline, static] |
Duplicates the specified string value.
value | Pointer to the string to duplicate. Must be zero-terminated if length is "unknown". |
length | Length of the value. if equals to unknown, then it will be computed using strlen(value). |
Definition at line 1594 of file jsoncpp.cpp.
static bool Json::in | ( | Reader::Char | c, |
Reader::Char | c1, | ||
Reader::Char | c2, | ||
Reader::Char | c3, | ||
Reader::Char | c4 | ||
) | [inline, static] |
Definition at line 244 of file jsoncpp.cpp.
static bool Json::in | ( | Reader::Char | c, |
Reader::Char | c1, | ||
Reader::Char | c2, | ||
Reader::Char | c3, | ||
Reader::Char | c4, | ||
Reader::Char | c5 | ||
) | [inline, static] |
Definition at line 250 of file jsoncpp.cpp.
static bool Json::isControlCharacter | ( | char | ch | ) | [inline, static] |
Returns true if ch is a control character (in range [0,32[).
Definition at line 140 of file jsoncpp.cpp.
std::ostream & Json::operator<< | ( | std::ostream & | sout, |
const Value & | root | ||
) |
Output using the StyledStreamWriter.
Definition at line 4213 of file jsoncpp.cpp.
std::istream & Json::operator>> | ( | std::istream & | sin, |
Value & | root | ||
) |
Read from 'sin' into 'root'.
Always keep comments from the input JSON.
This can be used to read a file into a particular sub-object. For example:
Json::Value root; cin >> root["dir"]["file"]; cout << root;
Result:
{ "dir": { "file": { // The input stream JSON would be nested here. } } }
std::exception | on parse error. |
Definition at line 1059 of file jsoncpp.cpp.
static void Json::releaseStringValue | ( | char * | value | ) | [inline, static] |
Free the string duplicated by duplicateStringValue().
Definition at line 1610 of file jsoncpp.cpp.
static void Json::uintToString | ( | LargestUInt | value, |
char *& | current | ||
) | [inline, static] |
Converts an unsigned integer to string.
value | Unsigned interger to convert to string |
current | Input/Output string buffer. Must have at least uintToStringBufferSize chars free. |
Definition at line 161 of file jsoncpp.cpp.
std::string Json::valueToQuotedString | ( | const char * | value | ) |
Definition at line 3503 of file jsoncpp.cpp.
std::string JSON_API Json::valueToString | ( | Int | value | ) |
std::string JSON_API Json::valueToString | ( | UInt | value | ) |
std::string Json::valueToString | ( | LargestInt | value | ) |
Definition at line 3418 of file jsoncpp.cpp.
std::string Json::valueToString | ( | LargestUInt | value | ) |
Definition at line 3433 of file jsoncpp.cpp.
std::string Json::valueToString | ( | double | value | ) |
Definition at line 3458 of file jsoncpp.cpp.
std::string Json::valueToString | ( | bool | value | ) |
Definition at line 3498 of file jsoncpp.cpp.
const unsigned int Json::unknown = (unsigned)-1 [static] |
Unknown size marker.
Definition at line 1583 of file jsoncpp.cpp.