cocos2d-x  2.2.1
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
CSJson Namespace Reference

JSON (JavaScript Object Notation). More...

Classes

class  Features
 Configuration passed to reader and writer. More...
 
class  BatchAllocator
 
class  Reader
 Unserialize a JSON document into a Value. More...
 
class  StaticString
 Lightweight wrapper to tag static string. More...
 
class  Value
 Represents a JSON value. More...
 
class  PathArgument
 Experimental and untested: represents an element of the "path" to access a node. More...
 
class  Path
 Experimental and untested: represents a "path" to access a node. More...
 
class  ValueIteratorBase
 base class for Value iterators. More...
 
class  ValueConstIterator
 const iterator for object and array value. More...
 
class  ValueIterator
 Iterator for object and array value. More...
 
class  Writer
 Abstract class for writers. More...
 
class  FastWriter
 Outputs a Value in JSON format without formatting (not human friendly). More...
 
class  StyledWriter
 Writes a Value in JSON format in a human friendly way. More...
 
class  StyledStreamWriter
 Writes a Value in JSON format in a human friendly way, to a stream rather than to a string. More...
 

Typedefs

typedef int Int
typedef unsigned int UInt
typedef long long int Int64
typedef unsigned long long int UInt64
typedef Int64 LargestInt
typedef UInt64 LargestUInt
typedef unsigned int ArrayIndex
typedef char UIntToStringBuffer [uintToStringBufferSize]

Enumerations

enum  { uintToStringBufferSize = 3*sizeof(LargestUInt)+1 }
 
enum  ValueType {
  nullValue = 0, intValue, uintValue, realValue,
  stringValue, booleanValue, arrayValue, objectValue
}
 Type of the value held by a Value object. More...
 
enum  CommentPlacement { commentBefore = 0, commentAfterOnSameLine, commentAfter, numberOfCommentPlacement }
 

Functions

std::istream &  (std::istream &, Value &)
 Read from 'sin' into 'root'. More...
 
std::string  (Int value)
std::string  (UInt value)
std::string  (LargestInt value)
std::string  (LargestUInt value)
var  ( var value)
local  ( local value)
std::string  (double value)
local  ( local value)
std::string  (bool value)
var  ( var value)
local  ( local value)
std::string  (const char *value)
std::ostream &  (std::ostream &, const Value &root)
 Output using the StyledStreamWriter. More...
 

Detailed Description

JSON (JavaScript Object Notation).

Typedef Documentation

typedef unsigned int ArrayIndex
local ArrayIndex
typedef int Int
var Int
local Int
typedef long long int Int64
var Int64
local Int64
typedef Int64 LargestInt
local LargestInt
local LargestUInt
typedef unsigned int UInt
var UInt
local UInt
typedef unsigned long long int
UInt64
var UInt64
local UInt64
typedef char
UIntToStringBuffer[uintToStringBufferSize]
typedef char
UIntToStringBuffer[uintToStringBufferSize]
typedef char
UIntToStringBuffer[uintToStringBufferSize]

Enumeration Type Documentation

anonymous enum
Enumerator
uintToStringBufferSize 

Constant that specify the size of the buffer that must be passed to uintToString.

var enum
Enumerator
uintToStringBufferSize 

Constant that specify the size of the buffer that must be passed to uintToString.

local enum
Enumerator
uintToStringBufferSize 

Constant that specify the size of the buffer that must be passed to uintToString.

Enumerator
commentBefore 

a comment placed on the line before a value

commentAfterOnSameLine 

a comment just after a value on the same line

commentAfter 

a comment on the line after a value (only make sense for root value)

numberOfCommentPlacement 
Enumerator
commentBefore 

a comment placed on the line before a value

commentAfterOnSameLine 

a comment just after a value on the same line

commentAfter 

a comment on the line after a value (only make sense for root value)

numberOfCommentPlacement 
Enumerator
commentBefore 

a comment placed on the line before a value

commentAfterOnSameLine 

a comment just after a value on the same line

commentAfter 

a comment on the line after a value (only make sense for root value)

numberOfCommentPlacement 
enum ValueType

Type of the value held by a Value object.

Enumerator
nullValue 

'null' value

intValue 

signed integer value

uintValue 

unsigned integer value

realValue 

double value

stringValue 

UTF-8 string value.

booleanValue 

bool value

arrayValue 

array value (ordered list)

objectValue 

object value (collection of name/value pairs).

var ValueType

Type of the value held by a Value object.

Enumerator
nullValue 

'null' value

intValue 

signed integer value

uintValue 

unsigned integer value

realValue 

double value

stringValue 

UTF-8 string value.

booleanValue 

bool value

arrayValue 

array value (ordered list)

objectValue 

object value (collection of name/value pairs).

local ValueType

Type of the value held by a Value object.

Enumerator
nullValue 

'null' value

intValue 

signed integer value

uintValue 

unsigned integer value

realValue 

double value

stringValue 

UTF-8 string value.

booleanValue 

bool value

arrayValue 

array value (ordered list)

objectValue 

object value (collection of name/value pairs).

Function Documentation

std::string CSJson::valueToString ( Int  value)
var valueToString ( var  value)
local valueToString ( local  value)
std::string CSJson::valueToString ( UInt  value)
var valueToString ( var  value)
local valueToString ( local  value)
std::string CSJson::valueToString ( LargestInt  value)
var valueToString ( var  value)
local valueToString ( local  value)
std::string CSJson::valueToString ( LargestUInt  value)
var valueToString ( var  value)
local valueToString ( local  value)
std::string CSJson::valueToString ( double  value)
var valueToString ( var  value)
local valueToString ( local  value)
std::string CSJson::valueToString ( bool  value)
var valueToString ( var  value)
local valueToString ( local  value)
std::string
CSJson::valueToQuotedString
( const char *  value)
var valueToQuotedString ( var  value)
local valueToQuotedString ( local  value)
std::ostream& CSJson::operator<< ( std::ostream &  ,
const Value &  root 
)

Output using the StyledStreamWriter.

See Also
CSJson::operator>>()
std::ostream& CSJson::operator<< ( var  ,
var  root 
)

Output using the StyledStreamWriter.

See Also
CSJson::operator>>()
std::ostream& CSJson::operator<< ( local  ,
local  root 
)

Output using the StyledStreamWriter.

See Also
CSJson::operator>>()
std::istream& CSJson::operator>> ( std::istream &  ,
Value &   
)

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:

cin >> root["dir"]["file"];
cout << root;

Result:

{
"dir": {
    "file": {
    // The input stream JSON would be nested here.
    }
}
}
Exceptions
std::exceptionon parse error.
See Also
CSJson::operator<<()
std::istream& CSJson::operator>> ( var  ,
var   
)

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:

cin >> root["dir"]["file"];
cout << root;

Result:

{
"dir": {
    "file": {
    // The input stream JSON would be nested here.
    }
}
}
Exceptions
std::exceptionon parse error.
See Also
CSJson::operator<<()
std::istream& CSJson::operator>> ( local  ,
local   
)

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:

cin >> root["dir"]["file"];
cout << root;

Result:

{
"dir": {
    "file": {
    // The input stream JSON would be nested here.
    }
}
}
Exceptions
std::exceptionon parse error.
See Also
CSJson::operator<<()