json_parser
: public orcus::json::parser_base¶Low-level JSON parser. The caller must provide a handler class to receive callbacks.
Public Types
handler_type
¶Public Functions
json_parser
(const char *p, size_t n, handler_type &hdl)¶Constructor.
p
: pointer to a string stream containing JSON string. n
: size of the stream. hdl
: handler class instance. parse
()¶Call this method to start parsing.
json_parser_handler
¶Public Functions
begin_parse
()¶Called when the parsing begins.
end_parse
()¶Called when the parsing ends.
begin_array
()¶Called when the opening brace of an array is encountered.
end_array
()¶Called when the closing brace of an array is encountered.
begin_object
()¶Called when the opening curly brace of an object is encountered.
object_key
(const char *p, size_t len, bool transient)¶Called when a key value string of an object is encountered.
p
: pointer to the first character of the key value string. len
: length of the key value string. transient
: true if the string value is stored in a temporary buffer which is not guaranteed to hold the string value after the end of this callback. When false, the pointer points to somewhere in the JSON stream being parsed. end_object
()¶Called when the closing curly brace of an object is encountered.
boolean_true
()¶Called when a boolean ‘true’ keyword is encountered.
boolean_false
()¶Called when a boolean ‘false’ keyword is encountered.
null
()¶Called when a ‘null’ keyword is encountered.
string
(const char *p, size_t len, bool transient)¶Called when a string value is encountered.
p
: pointer to the first character of the string value. len
: length of the string value. transient
: true if the string value is stored in a temporary buffer which is not guaranteed to hold the string value after the end of this callback. When false, the pointer points to somewhere in the JSON stream being parsed. number
(double val)¶Called when a numeric value is encountered.
val
: numeric value.