IOSS 2.0

Classes | Namespaces | Macros | Typedefs | Enumerations | Functions | Variables
json.h File Reference
`#include <exception>`
`#include <string>`
`#include <vector>`
`#include <map>`
`#include <deque>`
`#include <iosfwd>`
`#include <istream>`
`#include <stack>`
`#include <ostream>`
`#include <sstream>`
`#include <stdlib.h>`

Go to the source code of this file.

## Classes
class | Json::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 | Json::StaticString
| Lightweight wrapper to tag static string. More...
class | Json::Value
| Represents a JSON value. More...
class | Json::Value::CZString
struct | Json::Value::CZString::StringStorage
struct | Json::Value::CommentInfo
union | Json::Value::ValueHolder
class | Json::PathArgument
| Experimental and untested: represents an element of the "path" to access a node. More...
class | Json::Path
| Experimental and untested: represents a "path" to access a node. More...
class | Json::ValueIteratorBase
| base class for Value iterators. More...
class | Json::ValueConstIterator
| const iterator for object and array value. More...
class | Json::ValueIterator
| Iterator for object and array value. More...
class | Json::Reader
| Unserialize a JSON document into a Value. More...
struct | Json::Reader::StructuredError
| An error tagged with where in the JSON text it was encountered. More...
class | Json::Reader::Token
class | Json::Reader::ErrorInfo
class | Json::CharReader
class | Json::CharReader::Factory
class | Json::CharReaderBuilder
| Build a CharReader implementation. More...
class | Json::StreamWriter
class | Json::StreamWriter::Factory
| A simple abstract factory. More...
class | Json::StreamWriterBuilder
| Build a StreamWriter implementation. More...
class | Json::Writer
| Abstract class for writers. More...
class | Json::FastWriter
| Outputs a Value in JSON format without formatting (not human friendly). More...
class | Json::StyledWriter
| Writes a Value in JSON format in a human friendly way. More...
class | Json::StyledStreamWriter
| Writes a Value in JSON format in a human friendly way, to a stream rather than to a string. More...

## Namespaces
| Json
| JSON (JavaScript Object Notation).
| std

## Macros
#define | JSON_IS_AMALGAMATION
#define | JSON_VERSION_H_INCLUDED
#define | JSONCPP_VERSION_STRING "1.6.2"
#define | JSONCPP_VERSION_MAJOR 1
#define | JSONCPP_VERSION_MINOR 6
#define | JSONCPP_VERSION_PATCH 2
#define | JSONCPP_VERSION_QUALIFIER
#define | JSONCPP_VERSION_HEXA ((JSONCPP_VERSION_MAJOR << 24) | (JSONCPP_VERSION_MINOR << 16) | (JSONCPP_VERSION_PATCH << 8))
#define | JSON_CONFIG_H_INCLUDED
#define | JSON_USE_EXCEPTION 1
| If defined, indicates that json library is embedded in CppTL library. More...
#define | JSON_API
#define | JSONCPP_DEPRECATED(message)
#define | JSON_HAS_INT64
#define | JSON_FORWARDS_H_INCLUDED
#define | CPPTL_JSON_FEATURES_H_INCLUDED
#define | CPPTL_JSON_H_INCLUDED
#define | CPPTL_JSON_READER_H_INCLUDED
#define | JSON_WRITER_H_INCLUDED
#define | CPPTL_JSON_ASSERTIONS_H_INCLUDED
#define | JSON_ASSERT(condition)
#define | JSON_FAIL_MESSAGE(message)
#define | JSON_ASSERT_MESSAGE(condition, message)

## Typedefs
typedef int | Json::Int
typedef unsigned int | Json::UInt
typedef long long int | Json::Int64
typedef unsigned long long int | Json::UInt64
typedef Int64 | Json::LargestInt
typedef UInt64 | Json::LargestUInt
typedef unsigned int | Json::ArrayIndex

## Enumerations
enum | Json::ValueType { Json::nullValue = 0, Json::intValue, Json::uintValue, Json::realValue, Json::stringValue, Json::booleanValue, Json::arrayValue, Json::objectValue }
| Type of the value held by a Value object. More...
enum | Json::CommentPlacement { Json::commentBefore = 0, Json::commentAfterOnSameLine, Json::commentAfter, Json::numberOfCommentPlacement }

## Functions
void | Json::throwRuntimeError (std::string const &msg)
| used internally More...
void | Json::throwLogicError (std::string const &msg)
| used internally More...
template<>
void | std::swap (Json::Value &a, Json::Value &b)
| Specialize std::swap() for Json::Value. More...
bool JSON_API | Json::parseFromStream (CharReader::Factory const &, std::istream &, Value *root, std::string *errs)
JSON_API std::istream & | Json::operator>> (std::istream &, Value &)
| Read from 'sin' into 'root'. More...
std::string JSON_API | Json::writeString (StreamWriter::Factory const &factory, Value const &root)
| Write into stringstream, then return string, for convenience. A StreamWriter will be created from the factory, used, and then deleted. More...
std::string JSON_API | Json::valueToString (Int value)
std::string JSON_API | Json::valueToString (UInt value)
std::string JSON_API | Json::valueToString (LargestInt value)
std::string JSON_API | Json::valueToString (LargestUInt value)
std::string JSON_API | Json::valueToString (double value)
std::string JSON_API | Json::valueToString (bool value)
std::string JSON_API | Json::valueToQuotedString (const char *value)
JSON_API std::ostream & | Json::operator<< (std::ostream &, const Value &root)
| Output using the StyledStreamWriter. More...

## Variables
class JSON_API | Json::Exception
class JSON_API | Json::RuntimeError
class JSON_API | Json::LogicError

## Macro Definition Documentation

## ◆ CPPTL_JSON_ASSERTIONS_H_INCLUDED

#define CPPTL_JSON_ASSERTIONS_H_INCLUDED

## ◆ CPPTL_JSON_FEATURES_H_INCLUDED

#define CPPTL_JSON_FEATURES_H_INCLUDED

## ◆ CPPTL_JSON_H_INCLUDED

#define CPPTL_JSON_H_INCLUDED

## ◆ CPPTL_JSON_READER_H_INCLUDED

#define CPPTL_JSON_READER_H_INCLUDED

## ◆ JSON_API

#define JSON_API

If defined, indicates that the source file is amalgated to prevent private header inclusion. Remarks: it is automatically defined in the generated amalgated header.

## ◆ JSON_ASSERT

#define JSON_ASSERT | ( |  | condition | ) |

Value:
{ \
if (!(condition)) { \
Json::throwLogicError("assert json failed"); \
} \
}
Json::throwLogicError
void throwLogicError(std::string const &msg)
used internally

It should not be possible for a maliciously designed file to cause an abort() or seg-fault, so these macros are used only for pre-condition violations and internal logic errors.

## ◆ JSON_ASSERT_MESSAGE

#define JSON_ASSERT_MESSAGE | ( |  | condition,
|  |  | message
| ) |  |

Value:
if (!(condition)) { \
JSON_FAIL_MESSAGE(message); \
}

## ◆ JSON_CONFIG_H_INCLUDED

#define JSON_CONFIG_H_INCLUDED

## ◆ JSON_FAIL_MESSAGE

#define JSON_FAIL_MESSAGE | ( |  | message | ) |

Value:
{ \
std::ostringstream oss; \
oss << message; \
Json::throwLogicError(oss.str()); \
abort(); \
}
Json::throwLogicError
void throwLogicError(std::string const &msg)
used internally

## ◆ JSON_FORWARDS_H_INCLUDED

#define JSON_FORWARDS_H_INCLUDED

## ◆ JSON_HAS_INT64

#define JSON_HAS_INT64

## ◆ JSON_IS_AMALGAMATION

#define JSON_IS_AMALGAMATION

Json-cpp amalgated header (http://jsoncpp.sourceforge.net/). It is intended to be used with #include "json/json.h" If defined, indicates that the source file is amalgated to prevent private header inclusion.

## ◆ JSON_USE_EXCEPTION

#define JSON_USE_EXCEPTION 1

If defined, indicates that json library is embedded in CppTL library.

If defined, indicates that json may leverage CppTL library If defined, indicates that cpptl vector based map should be used instead of std::map as Value container.

## ◆ JSON_VERSION_H_INCLUDED

#define JSON_VERSION_H_INCLUDED

## ◆ JSON_WRITER_H_INCLUDED

#define JSON_WRITER_H_INCLUDED

## ◆ JSONCPP_DEPRECATED

#define JSONCPP_DEPRECATED | ( |  | message | ) |

## ◆ JSONCPP_VERSION_HEXA

#define JSONCPP_VERSION_HEXA ((JSONCPP_VERSION_MAJOR << 24) | (JSONCPP_VERSION_MINOR << 16) | (JSONCPP_VERSION_PATCH << 8))

## ◆ JSONCPP_VERSION_MAJOR

#define JSONCPP_VERSION_MAJOR 1

## ◆ JSONCPP_VERSION_MINOR

#define JSONCPP_VERSION_MINOR 6

## ◆ JSONCPP_VERSION_PATCH

#define JSONCPP_VERSION_PATCH 2

## ◆ JSONCPP_VERSION_QUALIFIER

#define JSONCPP_VERSION_QUALIFIER

## ◆ JSONCPP_VERSION_STRING

#define JSONCPP_VERSION_STRING "1.6.2"