27 using Location =
char const*;
29 enum class TokenType :
int {
40 TokenArraySeparator = 10,
41 TokenMemberSeparator = 11,
50 ::ll::TypedStorage<4, 4, ::Json::Reader::TokenType> type_;
51 ::ll::TypedStorage<8, 8, char const*> start_;
52 ::ll::TypedStorage<8, 8, char const*> end_;
53 ::ll::TypedStorage<1, 1, bool> stringHasEscape_;
61 ::ll::TypedStorage<8, 32, ::Json::Reader::Token> token_;
62 ::ll::TypedStorage<8, 32, ::std::string> message_;
63 ::ll::TypedStorage<8, 8, char const*> extra_;
79 using Errors = ::std::deque<::Json::Reader::ErrorInfo>;
81 using Nodes = ::std::stack<::Json::Value*, ::std::deque<::Json::Value*>>;
86 ::ll::TypedStorage<8, 40, ::std::stack<::Json::Value*, ::std::deque<::Json::Value*>>> nodes_;
87 ::ll::TypedStorage<8, 40, ::std::deque<::Json::Reader::ErrorInfo>> errors_;
88 ::ll::TypedStorage<8, 32, ::std::string> document_;
89 ::ll::TypedStorage<8, 8, char const*> begin_;
90 ::ll::TypedStorage<8, 8, char const*> end_;
91 ::ll::TypedStorage<8, 8, char const*> current_;
92 ::ll::TypedStorage<8, 8, char const*> lastValueEnd_;
93 ::ll::TypedStorage<8, 8, ::Json::Value*> lastValue_;
94 ::ll::TypedStorage<8, 32, ::std::string> commentsBefore_;
95 ::ll::TypedStorage<1, 2, ::Json::Features> features_;
96 ::ll::TypedStorage<1, 1, bool> collectComments_;
117 decodeUnicodeCodePoint(
::Json::Reader::Token& token,
char const*& current,
char const* end, uint& unicode);
120 decodeUnicodeEscapeSequence(
::Json::Reader::Token& token,
char const*& current,
char const* end, uint& unicode);
122 MCAPI ::std::string getFormattedErrorMessages()
const;
124 MCAPI ::std::string getLocationLineAndColumn(
char const* location)
const;
126 MCAPI
bool parse(::std::string
const& document,
::Json::Value& root,
bool collectComments);
128 MCAPI
bool parse(::std::istream& sin,
::Json::Value& root,
bool collectComments);
130 MCAPI
bool parse(
char const* beginDoc,
char const* endDoc,
::Json::Value& root,
bool);
132 MCAPI
bool parse(
char const* originalBegin, uint64 length,
::Json::Value& root,
bool collectComments);
140 MCAPI ::Json::Value readValue(
bool& successful);
142 MCAPI
bool recoverFromError(::Json::Reader::TokenType skipUntilToken);