Wt: JSON Library (Wt::Json)

Wt 3.3.0

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes

Classes | Enumerations | Functions
JSON Library (Wt::Json)

A JSON representation and parsing library. More...

## Classes
class | Wt::Json::Array
| A JSON array. More...
class | Wt::Json::Object
| A JSON object. More...
class | Wt::Json::ParseError
| A parse error. More...
class | Wt::Json::Value
| A JSON value. More...
class | Wt::Json::TypeException
| Exception that indicates a type error. More...
## Enumerations
enum | Wt::Json::Type { Wt::Json::NullType, Wt::Json::StringType, Wt::Json::BoolType, Wt::Json::NumberType, Wt::Json::ObjectType, Wt::Json::ArrayType }
| Enumeration for the type of a JSON value. More...
## Functions
WT_API void | Wt::Json::parse (const std::string &input, Value &result, bool validateUTF8=true)
| Parse function.
WT_API bool | Wt::Json::parse (const std::string &input, Value &result, ParseError &error, bool validateUTF8=true)
| Parse function.
WT_API void | Wt::Json::parse (const std::string &input, Object &result, bool validateUTF8=true)
| Parse function.
WT_API bool | Wt::Json::parse (const std::string &input, Object &result, ParseError &error, bool validateUTF8=true)
| Parse function.

## Detailed Description

A JSON representation and parsing library.

The JSON library contains data types to represent a JSON data structure (Value, Object and Array), and a JSON parser.

Usage example:

     Json::Object result;
     Json::parse("{ "
                 "  \"a\": \"That's great\", "
                 "  \"b\": true "
                 "}",
                 result);

     std::cerr << "Size: " << result.size(); << std::endl; // Size: 2
     WString s = result.get("a");
     bool b = result.get("b");
     std::cerr << "a: " << s << ", b: " << b << std::endl; // a: That's great, b: true

## Enumeration Type Documentation

enum Wt::Json::Type

Enumeration for the type of a JSON value.

See also:
  Value::type()

Enumerator:

  NullType | "null" or missing value
  StringType | a (unicode) string
  BoolType | "true" or "false"
  NumberType | a number (integer or floating point)
  ObjectType | an Object
  ArrayType | an Array

## Function Documentation

void Wt::Json::parse | ( | const std::string & | input,
|  | Value & | result,
|  | bool | validateUTF8 = `true`
| ) |  |

Parse function.

This function parses the input string (which represents a UTF-8 JSON-encoded data structure) into the `result` value. On success, the result value contains either an Array or Object.

If validateUTF8 is true, the parser will sanitize (security scan for invalid UTF-8) the UTF-8 input string before parsing starts.

Exceptions:

  ParseError | when the input is not a correct JSON structure.

bool Wt::Json::parse | ( | const std::string & | input,
|  | Value & | result,
|  | ParseError & | error,
|  | bool | validateUTF8 = `true`
| ) |  |

Parse function.

This function parses the input string (which represents a UTF-8 JSON-encoded data structure) into the `result` value. On success, the result value contains either an Array or Object.

If validateUTF8 is true, the parser will sanitize (security scan for invalid UTF-8) the UTF-8 input string before parsing starts.

This method returns `true` if the parse was succesful, or reports an error in into the `error` value otherwise.

void Wt::Json::parse | ( | const std::string & | input,
|  | Object & | result,
|  | bool | validateUTF8 = `true`
| ) |  |

Parse function.

This function parses the input string (which represents a UTF-8 JSON-encoded data structure) into the `result` object.

If validateUTF8 is true, the parser will sanitize (security scan for invalid UTF-8) the UTF-8 input string before parsing starts.

Exceptions:

  ParseError | when the input is not a correct JSON structure.
  TypeException | when the JSON structure does not represent an Object.

bool Wt::Json::parse | ( | const std::string & | input,
|  | Object & | result,
|  | ParseError & | error,
|  | bool | validateUTF8 = `true`
| ) |  |

Parse function.

This function parses the input string (which represents a UTF-8 JSON-encoded data structure) into the `result` value. On success, the result value contains either an Array or Object.

If validateUTF8 is true, the parser will sanitize (security scan for invalid UTF-8) the UTF-8 input string before parsing starts.

This method returns `true` if the parse was succesful, or reports an error in into the `error` value otherwise.

All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator