71 #ifndef JSON_AMALGATED_H_INCLUDED 72 #define JSON_AMALGATED_H_INCLUDED 75 #define JSON_IS_AMALGAMATION 84 #ifndef JSON_VERSION_H_INCLUDED 85 #define JSON_VERSION_H_INCLUDED 87 #define JSONCPP_VERSION_STRING "1.6.2" 88 #define JSONCPP_VERSION_MAJOR 1 89 #define JSONCPP_VERSION_MINOR 6 90 #define JSONCPP_VERSION_PATCH 2 91 #define JSONCPP_VERSION_QUALIFIER 92 #define JSONCPP_VERSION_HEXA \ 93 ((JSONCPP_VERSION_MAJOR << 24) | (JSONCPP_VERSION_MINOR << 16) | (JSONCPP_VERSION_PATCH << 8)) 95 #endif // JSON_VERSION_H_INCLUDED 110 #ifndef JSON_CONFIG_H_INCLUDED 111 #define JSON_CONFIG_H_INCLUDED 125 #ifndef JSON_USE_EXCEPTION 126 #define JSON_USE_EXCEPTION 1 135 #include <cpptl/config.h> 136 #ifndef JSON_USE_CPPTL 137 #define JSON_USE_CPPTL 1 142 #define JSON_API CPPTL_API 143 #elif defined(JSON_DLL_BUILD) 144 #if defined(_MSC_VER) 145 #define JSON_API __declspec(dllexport) 146 #define JSONCPP_DISABLE_DLL_INTERFACE_WARNING 147 #endif // if defined(_MSC_VER) 148 #elif defined(JSON_DLL) 149 #if defined(_MSC_VER) 150 #define JSON_API __declspec(dllimport) 151 #define JSONCPP_DISABLE_DLL_INTERFACE_WARNING 152 #endif // if defined(_MSC_VER) 153 #endif // ifdef JSON_IN_CPPTL 154 #if !defined(JSON_API) 163 #if defined(_MSC_VER) && _MSC_VER <= 1200 // MSVC 6 166 #define JSON_USE_INT64_DOUBLE_CONVERSION 1 171 #pragma warning(disable : 4786) 172 #endif // if defined(_MSC_VER) && _MSC_VER < 1200 // MSVC 6 174 #if defined(_MSC_VER) && _MSC_VER >= 1500 // MSVC 2008 176 #define JSONCPP_DEPRECATED(message) __declspec(deprecated(message)) 177 #elif defined(__clang__) && defined(__has_feature) 178 #if __has_feature(attribute_deprecated_with_message) 179 #define JSONCPP_DEPRECATED(message) __attribute__((deprecated(message))) 181 #elif defined(__GNUC__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 5)) 182 #define JSONCPP_DEPRECATED(message) __attribute__((deprecated(message))) 183 #elif defined(__GNUC__) && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 1)) 184 #define JSONCPP_DEPRECATED(message) __attribute__((__deprecated__)) 187 #if !defined(JSONCPP_DEPRECATED) 188 #define JSONCPP_DEPRECATED(message) 189 #endif // if !defined(JSONCPP_DEPRECATED) 194 #if defined(JSON_NO_INT64) 197 #undef JSON_HAS_INT64 198 #else // if defined(JSON_NO_INT64) 200 #if defined(_MSC_VER) // Microsoft Visual Studio 201 typedef __int64
Int64;
202 typedef unsigned __int64
UInt64;
203 #else // if defined(_MSC_VER) // Other platforms, use long long 206 #endif // if defined(_MSC_VER) 209 #define JSON_HAS_INT64 210 #endif // if defined(JSON_NO_INT64) 213 #endif // JSON_CONFIG_H_INCLUDED 228 #ifndef JSON_FORWARDS_H_INCLUDED 229 #define JSON_FORWARDS_H_INCLUDED 231 #if !defined(JSON_IS_AMALGAMATION) 233 #endif // if !defined(JSON_IS_AMALGAMATION) 259 #endif // JSON_FORWARDS_H_INCLUDED 274 #ifndef CPPTL_JSON_FEATURES_H_INCLUDED 275 #define CPPTL_JSON_FEATURES_H_INCLUDED 277 #if !defined(JSON_IS_AMALGAMATION) 278 #include "forwards.h" 279 #endif // if !defined(JSON_IS_AMALGAMATION) 326 #endif // CPPTL_JSON_FEATURES_H_INCLUDED 341 #ifndef CPPTL_JSON_H_INCLUDED 342 #define CPPTL_JSON_H_INCLUDED 344 #if !defined(JSON_IS_AMALGAMATION) 345 #include "forwards.h" 346 #endif // if !defined(JSON_IS_AMALGAMATION) 351 #ifndef JSON_USE_CPPTL_SMALLMAP 354 #include <cpptl/smallmap.h> 356 #ifdef JSON_USE_CPPTL 357 #include <cpptl/forwards.h> 362 #if defined(JSONCPP_DISABLE_DLL_INTERFACE_WARNING) 363 #pragma warning(push) 364 #pragma warning(disable : 4251) 365 #endif // if defined(JSONCPP_DISABLE_DLL_INTERFACE_WARNING) 441 operator const char *()
const {
return c_str_; }
443 const char *
c_str()
const {
return c_str_; }
493 #if defined(JSON_HAS_INT64) 496 #endif // defined(JSON_HAS_INT64) 518 #if defined(JSON_HAS_INT64) 525 #endif // defined(JSON_HAS_INT64) 528 #ifndef JSONCPP_DOC_EXCLUDE_IMPLEMENTATION 538 bool operator<(
CZString const &other)
const;
539 bool operator==(
CZString const &other)
const;
540 ArrayIndex index()
const;
542 char const *
data()
const;
543 unsigned length()
const;
544 bool isStaticString()
const;
563 #ifndef JSON_USE_CPPTL_SMALLMAP 566 typedef CppTL::SmallMap<CZString, Value> ObjectValues;
567 #endif // ifndef JSON_USE_CPPTL_SMALLMAP 568 #endif // ifndef JSONCPP_DOC_EXCLUDE_IMPLEMENTATION 589 #if defined(JSON_HAS_INT64) 592 #endif // if defined(JSON_HAS_INT64) 594 Value(
const char *value);
595 Value(
const char *beginValue,
const char *endValue);
612 Value(
const std::string &value);
613 #ifdef JSON_USE_CPPTL 614 Value(
const CppTL::ConstString &value);
628 void swapPayload(
Value &other);
633 bool operator<(
const Value &other)
const;
634 bool operator<=(
const Value &other)
const;
635 bool operator>=(
const Value &other)
const;
636 bool operator>(
const Value &other)
const;
637 bool operator==(
const Value &other)
const;
638 bool operator!=(
const Value &other)
const;
639 int compare(
const Value &other)
const;
641 const char *asCString()
const;
642 std::string asString()
const;
646 bool getString(
char const **str,
char const **end)
const;
647 #ifdef JSON_USE_CPPTL 648 CppTL::ConstString asConstString()
const;
652 #if defined(JSON_HAS_INT64) 653 Int64 asInt64()
const;
654 UInt64 asUInt64()
const;
655 #endif // if defined(JSON_HAS_INT64) 656 LargestInt asLargestInt()
const;
657 LargestUInt asLargestUInt()
const;
658 float asFloat()
const;
659 double asDouble()
const;
665 bool isInt64()
const;
667 bool isUInt64()
const;
668 bool isIntegral()
const;
669 bool isDouble()
const;
670 bool isNumeric()
const;
671 bool isString()
const;
672 bool isArray()
const;
673 bool isObject()
const;
675 bool isConvertibleTo(
ValueType other)
const;
678 ArrayIndex size()
const;
685 bool operator!()
const;
697 void resize(ArrayIndex size);
728 Value get(ArrayIndex index,
const Value &defaultValue)
const;
730 bool isValidIndex(ArrayIndex index)
const;
764 #ifdef JSON_USE_CPPTL 773 Value get(
const char *key,
const Value &defaultValue)
const;
777 Value get(
const char *key,
const char *end,
const Value &defaultValue)
const;
781 Value get(
const std::string &key,
const Value &defaultValue)
const;
782 #ifdef JSON_USE_CPPTL 785 Value get(
const CppTL::ConstString &key,
const Value &defaultValue)
const;
790 Value const *find(
char const *key,
char const *end)
const;
794 Value const *demand(
char const *key,
char const *end);
802 Value removeMember(
const char *key);
806 Value removeMember(
const std::string &key);
809 bool removeMember(
const char *key,
Value *removed);
816 bool removeMember(std::string
const &key,
Value *removed);
818 bool removeMember(
const char *key,
const char *end,
Value *removed);
825 bool removeIndex(ArrayIndex i,
Value *removed);
829 bool isMember(
const char *key)
const;
832 bool isMember(
const std::string &key)
const;
834 bool isMember(
const char *key,
const char *end)
const;
835 #ifdef JSON_USE_CPPTL 837 bool isMember(
const CppTL::ConstString &key)
const;
845 Members getMemberNames()
const;
856 void setComment(const
char *comment,
size_t len,
CommentPlacement placement);
863 std::
string toStyledString() const;
865 const_iterator begin() const;
866 const_iterator end() const;
873 void setOffsetStart(
size_t start);
874 void setOffsetLimit(
size_t limit);
875 size_t getOffsetStart() const;
876 size_t getOffsetLimit() const;
879 void initBasic(
ValueType type,
bool allocated = false);
881 Value &resolveReference(const
char *key);
882 Value &resolveReference(const
char *key, const
char *end);
889 void setComment(
const char *text,
size_t len);
937 enum Kind { kindNone = 0, kindIndex, kindKey };
961 const Value &resolve(
const Value &root)
const;
968 typedef std::vector<const PathArgument *>
InArgs;
969 typedef std::vector<PathArgument>
Args;
971 void makePath(
const std::string &path,
const InArgs &in);
972 void addPathInArg(
const std::string &path,
const InArgs &in, InArgs::const_iterator &itInArg,
974 void invalidPath(
const std::string &path,
int location);
993 bool operator==(
const SelfType &other)
const {
return isEqual(other); }
995 bool operator!=(
const SelfType &other)
const {
return !isEqual(other); }
1010 std::string
name()
const;
1017 char const *memberName()
const;
1021 char const *memberName(
char const **end)
const;
1024 Value &deref()
const;
1030 difference_type computeDistance(
const SelfType &other)
const;
1032 bool isEqual(
const SelfType &other)
const;
1034 void copy(
const SelfType &other);
1069 SelfType temp(*
this);
1076 SelfType temp(*
this);
1119 explicit ValueIterator(
const Value::ObjectValues::iterator ¤t);
1122 SelfType &operator=(
const SelfType &other);
1126 SelfType temp(*
this);
1133 SelfType temp(*
this);
1162 #if defined(JSONCPP_DISABLE_DLL_INTERFACE_WARNING) 1163 #pragma warning(pop) 1164 #endif // if defined(JSONCPP_DISABLE_DLL_INTERFACE_WARNING) 1166 #endif // CPPTL_JSON_H_INCLUDED 1181 #ifndef CPPTL_JSON_READER_H_INCLUDED 1182 #define CPPTL_JSON_READER_H_INCLUDED 1184 #if !defined(JSON_IS_AMALGAMATION) 1185 #include "features.h" 1187 #endif // if !defined(JSON_IS_AMALGAMATION) 1196 #if defined(JSONCPP_DISABLE_DLL_INTERFACE_WARNING) 1197 #pragma warning(push) 1198 #pragma warning(disable : 4251) 1199 #endif // if defined(JSONCPP_DISABLE_DLL_INTERFACE_WARNING) 1251 bool parse(
const std::string &document,
Value &root,
bool collectComments =
true);
1271 bool parse(
const char *beginDoc,
const char *endDoc,
Value &root,
bool collectComments =
true);
1275 bool parse(std::istream &is,
Value &root,
bool collectComments =
true);
1287 std::
string getFormatedErrorMessages() const;
1297 std::
string getFormattedErrorMessages() const;
1314 bool pushError(const
Value &value, const
std::
string &message);
1323 bool pushError(const
Value &value, const
std::
string &message, const
Value &extra);
1333 tokenEndOfStream = 0,
1367 bool readToken(
Token &token);
1369 bool match(Location pattern,
int patternLength);
1371 bool readCStyleComment();
1372 bool readCppStyleComment();
1376 bool readObject(
Token &token);
1377 bool readArray(
Token &token);
1378 bool decodeNumber(
Token &token);
1379 bool decodeNumber(
Token &token,
Value &decoded);
1380 bool decodeString(
Token &token);
1381 bool decodeString(
Token &token, std::string &decoded);
1382 bool decodeDouble(
Token &token);
1383 bool decodeDouble(
Token &token,
Value &decoded);
1384 bool decodeUnicodeCodePoint(
Token &token, Location ¤t, Location end,
1385 unsigned int &unicode);
1386 bool decodeUnicodeEscapeSequence(
Token &token, Location ¤t, Location end,
1387 unsigned int &unicode);
1388 bool addError(
const std::string &message,
Token &token, Location extra = 0);
1389 bool recoverFromError(
TokenType skipUntilToken);
1390 bool addErrorAndRecover(
const std::string &message,
Token &token,
TokenType skipUntilToken);
1391 void skipUntilSpace();
1392 Value ¤tValue();
1394 void getLocationLineAndColumn(Location location,
int &line,
int &column)
const;
1395 std::string getLocationLineAndColumn(Location location)
const;
1397 void skipCommentTokens(
Token &token);
1437 virtual bool parse(
char const *beginDoc,
char const *endDoc,
Value *root,
1438 std::string *errs) = 0;
1568 #if defined(JSONCPP_DISABLE_DLL_INTERFACE_WARNING) 1569 #pragma warning(pop) 1570 #endif // if defined(JSONCPP_DISABLE_DLL_INTERFACE_WARNING) 1572 #endif // CPPTL_JSON_READER_H_INCLUDED 1587 #ifndef JSON_WRITER_H_INCLUDED 1588 #define JSON_WRITER_H_INCLUDED 1590 #if !defined(JSON_IS_AMALGAMATION) 1592 #endif // if !defined(JSON_IS_AMALGAMATION) 1599 #if defined(JSONCPP_DISABLE_DLL_INTERFACE_WARNING) 1600 #pragma warning(push) 1601 #pragma warning(disable : 4251) 1602 #endif // if defined(JSONCPP_DISABLE_DLL_INTERFACE_WARNING) 1635 virtual int write(
Value const &root, std::ostream *sout) = 0;
1726 virtual std::string write(
const Value &root) = 0;
1745 void enableYAMLCompatibility();
1752 void dropNullPlaceholders();
1754 void omitEndingLineFeed();
1757 virtual std::string write(
const Value &root);
1760 void writeValue(
const Value &value);
1803 virtual std::string write(
const Value &root);
1806 void writeValue(
const Value &value);
1807 void writeArrayValue(
const Value &value);
1808 bool isMultineArray(
const Value &value);
1809 void pushValue(
const std::string &value);
1811 void writeWithIndent(
const std::string &value);
1814 void writeCommentBeforeValue(
const Value &root);
1815 void writeCommentAfterValueOnSameLine(
const Value &root);
1816 bool hasCommentForValue(
const Value &value);
1817 static std::string normalizeEOL(
const std::string &text);
1868 void write(std::ostream &out,
const Value &root);
1871 void writeValue(
const Value &value);
1872 void writeArrayValue(
const Value &value);
1873 bool isMultineArray(
const Value &value);
1874 void pushValue(
const std::string &value);
1876 void writeWithIndent(
const std::string &value);
1879 void writeCommentBeforeValue(
const Value &root);
1880 void writeCommentAfterValueOnSameLine(
const Value &root);
1881 bool hasCommentForValue(
const Value &value);
1882 static std::string normalizeEOL(
const std::string &text);
1895 #if defined(JSON_HAS_INT64) 1898 #endif // if defined(JSON_HAS_INT64) 1911 #if defined(JSONCPP_DISABLE_DLL_INTERFACE_WARNING) 1912 #pragma warning(pop) 1913 #endif // if defined(JSONCPP_DISABLE_DLL_INTERFACE_WARNING) 1915 #endif // JSON_WRITER_H_INCLUDED 1930 #ifndef CPPTL_JSON_ASSERTIONS_H_INCLUDED 1931 #define CPPTL_JSON_ASSERTIONS_H_INCLUDED 1936 #if !defined(JSON_IS_AMALGAMATION) 1938 #endif // if !defined(JSON_IS_AMALGAMATION) 1944 #if JSON_USE_EXCEPTION 1947 #define JSON_ASSERT(condition) \ 1949 if (!(condition)) { \ 1950 Json::throwLogicError("assert json failed"); \ 1954 #define JSON_FAIL_MESSAGE(message) \ 1956 std::ostringstream oss; \ 1958 Json::throwLogicError(oss.str()); \ 1962 #else // JSON_USE_EXCEPTION 1964 #define JSON_ASSERT(condition) assert(condition) 1968 #define JSON_FAIL_MESSAGE(message) \ 1970 std::ostringstream oss; \ 1972 assert(false && oss.str().c_str()); \ 1978 #define JSON_ASSERT_MESSAGE(condition, message) \ 1979 if (!(condition)) { \ 1980 JSON_FAIL_MESSAGE(message); \ 1983 #endif // CPPTL_JSON_ASSERTIONS_H_INCLUDED 1989 #endif // ifndef JSON_AMALGATED_H_INCLUDED
bool isNull_
Definition: json.h:1039
bool operator==(const SelfType &other) const
Definition: json.h:993
unsigned int UInt
Definition: json.h:193
unsigned integer value
Definition: json.h:401
difference_type operator-(const SelfType &other) const
Definition: json.h:997
std::stack< Value * > Nodes
Definition: json.h:1399
std::vector< std::string > ChildValues
Definition: json.h:1819
std::vector< std::string > Members
Definition: json.h:488
std::ostream * document_
Definition: json.h:1887
LargestInt int_
Definition: json.h:904
bool bool_
Definition: json.h:907
double value
Definition: json.h:402
bool allowNumericKeys_
true if numeric object key are allowed. Default: false.
Definition: json.h:321
cause an exception This is a security so the default is low parse()` returns false when extra non-whitespace trails the JSON value in the input string. - `"rejectDupKeys" CharReaderBuilder()
Location current_
Definition: json.h:1405
Json::Value settings_
Definition: json.h:1503
ValueIterator iterator
Definition: json.h:489
int difference_type
Definition: json.h:987
SelfType operator--(int)
Definition: json.h:1074
bool allowComments_
true if comments are allowed. Default: true.
Definition: json.h:311
#define JSON_API
Definition: json.h:155
JSON_API std::ostream & operator<<(std::ostream &, const Value &root)
Output using the StyledStreamWriter.
Value & operator[](std::string key)
Writes a Value in JSON format in a human friendly way, to a stream rather than to a string...
Definition: json.h:1855
ValueType type_
Definition: json.h:912
Json::LargestInt LargestInt
Definition: json.h:497
unsigned length_
Definition: json.h:552
bool omitEndingLineFeed_
Definition: json.h:1765
bool dropNullPlaceholders_
Definition: json.h:1764
signed integer value
Definition: json.h:400
static const LargestUInt maxLargestUInt
Maximum unsigned integer value that can be stored in a Json::Value.
Definition: json.h:509
const char * c_str() const
Definition: json.h:443
char Char
Definition: json.h:1211
size_t offset_limit
Definition: json.h:1223
bool validate(Json::Value *invalid) const
StringStorage storage_
Definition: json.h:558
std::ostream * sout_
Definition: json.h:1624
static const Value & nullRef
Definition: json.h:503
UInt64 LargestUInt
Definition: json.h:208
static const LargestInt minLargestInt
Minimum signed integer value that can be stored in a Json::Value.
Definition: json.h:505
std::string indentString_
Definition: json.h:1823
Json::Int Int
Definition: json.h:492
ArrayIndex index_
Definition: json.h:557
Experimental and untested: represents an element of the "path" to access a node.
Definition: json.h:926
Json::ArrayIndex ArrayIndex
Definition: json.h:499
SelfType & operator++()
Definition: json.h:1087
std::string commentsBefore_
Definition: json.h:1408
std::vector< const PathArgument * > InArgs
Definition: json.h:968
Lightweight wrapper to tag static string.
Definition: json.h:436
ValueConstIterator const_iterator
Definition: json.h:490
bool yamlCompatiblityEnabled_
Definition: json.h:1763
std::string document_
Definition: json.h:1762
TokenType
Definition: json.h:1332
LargestUInt uint_
Definition: json.h:905
TokenType type_
Definition: json.h:1352
bool collectComments_
Definition: json.h:1410
unsigned int ArrayIndex
Definition: json.h:245
ObjectValues * map_
Definition: json.h:910
const Value & reference
Definition: json.h:1053
static const UInt maxUInt
Maximum unsigned int value that can be stored in a Json::Value.
Definition: json.h:516
std::string JSON_API valueToString(Int value)
Represents a JSON value.
Definition: json.h:483
Json::Int64 Int64
Definition: json.h:495
std::string message_
Definition: json.h:1361
Configuration passed to reader and writer. This configuration object can be used to force the Reader ...
Definition: json.h:287
Json::Value settings_
Definition: json.h:1692
bool indented_
Definition: json.h:1892
bool addChildValues_
Definition: json.h:1826
a comment placed on the line before a value
Definition: json.h:410
std::string JSON_API writeString(StreamWriter::Factory const &factory, Value const &root)
Write into stringstream, then return string, for convenience. A StreamWriter will be created from the...
static const UInt64 maxUInt64
Maximum unsigned 64 bits int value that can be stored in a Json::Value.
Definition: json.h:524
~StyledStreamWriter()
Definition: json.h:1859
DuplicationPolicy policy_
Definition: json.h:551
std::deque< ErrorInfo > Errors
Definition: json.h:1365
static const Int64 maxInt64
Maximum signed 64 bits int value that can be stored in a Json::Value.
Definition: json.h:522
JSON_API std::istream & operator>>(std::istream &, Value &)
Read from 'sin' into 'root'.
long long int Int64
Definition: json.h:204
Kind kind_
Definition: json.h:940
Location start_
Definition: json.h:1353
difference_type computeDistance(const SelfType &other) const
Outputs a Value in JSON format without formatting (not human friendly).
Definition: json.h:1738
SelfType & operator--()
Definition: json.h:1138
virtual ~CharReader()
Definition: json.h:1418
const char * c_str_
Definition: json.h:446
int difference_type
Definition: json.h:1107
void swap(Json::Value &a, Json::Value &b)
Specialize std::swap() for Json::Value.
Definition: json.h:1159
static const Int minInt
Minimum signed int value that can be stored in a Json::Value.
Definition: json.h:512
char const * cstr_
Definition: json.h:555
reference operator*() const
Definition: json.h:1093
Int64 LargestInt
Definition: json.h:207
void throwLogicError(std::string const &msg)
used internally
virtual ~CharReaderBuilder()
std::map< CZString, Value > ObjectValues
Definition: json.h:564
static const Int64 minInt64
Minimum signed 64 bits int value that can be stored in a Json::Value.
Definition: json.h:520
size_t start_
Definition: json.h:919
char * string_
Definition: json.h:908
static void setDefaults(Json::Value *settings)
int rightMargin_
Definition: json.h:1824
An error tagged with where in the JSON text it was encountered.
Definition: json.h:1220
Abstract class for writers.
Definition: json.h:1721
void msg(std::string m)
Definition: Iodw_Utils.C:54
ValueConstIterator SelfType
Definition: json.h:1055
Json::UInt UInt
Definition: json.h:491
std::string message
Definition: json.h:1224
ArrayIndex index_
Definition: json.h:939
object value (collection of name/value pairs).
Definition: json.h:406
class JSON_API RuntimeError
Definition: json.h:382
bool value
Definition: json.h:404
Json::LargestUInt LargestUInt
Definition: json.h:498
Build a CharReader implementation.
Definition: json.h:1463
Token token_
Definition: json.h:1360
SelfType operator--(int)
Definition: json.h:1131
virtual CharReader * newCharReader() const
void swap(Value &other)
Swap everything.
Location end_
Definition: json.h:1354
int indentSize_
Definition: json.h:1825
ValueType
Type of the value held by a Value object.
Definition: json.h:398
Errors errors_
Definition: json.h:1401
virtual ~StyledWriter()
Definition: json.h:1796
Args args_
Definition: json.h:976
std::string key_
Definition: json.h:938
bool operator!=(const SelfType &other) const
Definition: json.h:995
bool addChildValues_
Definition: json.h:1891
root value)
Definition: json.h:414
size_t limit_
Definition: json.h:920
JSON (JavaScript Object Notation).
Definition: json.h:191
ValueIteratorBase SelfType
Definition: json.h:988
a comment just after a value on the same line
Definition: json.h:411
Json::UInt64 UInt64
Definition: json.h:494
SelfType & operator++()
Definition: json.h:1144
Location end_
Definition: json.h:1404
base class for Value iterators.
Definition: json.h:982
Value value_type
Definition: json.h:1105
std::string indentString_
Definition: json.h:1888
CommentPlacement
Definition: json.h:409
static const Value & null
Definition: json.h:501
const Value value_type
Definition: json.h:1050
size_t match(const char *name1, const char *name2)
Definition: Ioex_Utils.C:44
int Int
Definition: json.h:192
Value * pointer
Definition: json.h:1109
unsigned int allocated_
Definition: json.h:913
'null' value
Definition: json.h:399
Kind
Definition: json.h:937
DuplicationPolicy
Definition: json.h:532
std::string JSON_API valueToQuotedString(const char *value)
SelfType & operator--()
Definition: json.h:1081
UTF-8 string value.
Definition: json.h:403
SelfType operator++(int)
Definition: json.h:1124
size_t offset_start
Definition: json.h:1222
static const Int maxInt
Maximum signed int value that can be stored in a Json::Value.
Definition: json.h:514
unsigned int size_t
Definition: json.h:986
Nodes nodes_
Definition: json.h:1400
class JSON_API LogicError
Definition: json.h:389
bool allowDroppedNullPlaceholders_
true if dropped null placeholders are allowed. Default: false.
Definition: json.h:318
virtual ~Factory()
Definition: json.h:1443
std::string name(Ioss::GroupingEntity *entity)
Definition: io_info.C:71
std::string indentation_
Definition: json.h:1890
double real_
Definition: json.h:906
A simple abstract factory.
Definition: json.h:1639
static void strictMode(Json::Value *settings)
StaticString(const char *czstring)
Definition: json.h:439
Location extra_
Definition: json.h:1362
Unserialize a JSON document into a Value.
Definition: json.h:1208
SelfType operator++(int)
Definition: json.h:1067
ChildValues childValues_
Definition: json.h:1886
unsigned long long int UInt64
Definition: json.h:205
Features features_
Definition: json.h:1409
std::vector< PathArgument > Args
Definition: json.h:969
ValueIterator SelfType
Definition: json.h:1110
CommentInfo * comments_
Definition: json.h:915
static const LargestInt maxLargestInt
Maximum signed integer value that can be stored in a Json::Value.
Definition: json.h:507
std::string document_
Definition: json.h:1822
bool JSON_API parseFromStream(CharReader::Factory const &, std::istream &, Value *root, std::string *errs)
class JSON_API Exception
Definition: json.h:375
std::bidirectional_iterator_tag iterator_category
Definition: json.h:985
Build a StreamWriter implementation.
Definition: json.h:1670
Iterator for object and array value.
Definition: json.h:1100
Location lastValueEnd_
Definition: json.h:1406
const Char * Location
Definition: json.h:1212
std::string document_
Definition: json.h:1402
std::vector< std::string > ChildValues
Definition: json.h:1884
Writes a Value in JSON format in a human friendly way.
Definition: json.h:1792
Experimental and untested: represents a "path" to access a node.
Definition: json.h:954
int rightMargin_
Definition: json.h:1889
const std::string invalid()
Definition: Ioss_ConcreteVariableType.C:56
virtual ~FastWriter()
Definition: json.h:1743
ChildValues childValues_
Definition: json.h:1821
bool strictRoot_
Definition: json.h:315
pointer operator->() const
Definition: json.h:1152
Location begin_
Definition: json.h:1403
const iterator for object and array value.
Definition: json.h:1045
std::vector< char > data
Definition: Ioss_Utils.C:78
const Value * pointer
Definition: json.h:1054
Value * lastValue_
Definition: json.h:1407
#define JSONCPP_DEPRECATED(message)
Definition: json.h:188
unsigned int size_t
Definition: json.h:1106
Value::ObjectValues::iterator current_
Definition: json.h:1037
pointer operator->() const
Definition: json.h:1095
reference operator*() const
Definition: json.h:1150
array value (ordered list)
Definition: json.h:405
void throwRuntimeError(std::string const &msg)
used internally
Value & reference
Definition: json.h:1108