#include "json.h"
Public Types | |
using | binary_t = typename BasicJsonType::binary_t |
using | number_float_t = typename BasicJsonType::number_float_t |
using | number_integer_t = typename BasicJsonType::number_integer_t |
using | number_unsigned_t = typename BasicJsonType::number_unsigned_t |
using | parse_event_t = typename BasicJsonType::parse_event_t |
using | parser_callback_t = typename BasicJsonType::parser_callback_t |
using | string_t = typename BasicJsonType::string_t |
Public Member Functions | |
json_sax_dom_callback_parser (BasicJsonType &r, const parser_callback_t cb, const bool allow_exceptions_=true) | |
json_sax_dom_callback_parser (const json_sax_dom_callback_parser &)=delete | |
json_sax_dom_callback_parser (json_sax_dom_callback_parser &&)=default | |
~json_sax_dom_callback_parser ()=default | |
bool | binary (binary_t &val) |
bool | boolean (bool val) |
bool | end_array () |
bool | end_object () |
constexpr bool | is_errored () const |
bool | key (string_t &val) |
bool | null () |
bool | number_float (number_float_t val, const string_t &) |
bool | number_integer (number_integer_t val) |
bool | number_unsigned (number_unsigned_t val) |
json_sax_dom_callback_parser & | operator= (const json_sax_dom_callback_parser &)=delete |
json_sax_dom_callback_parser & | operator= (json_sax_dom_callback_parser &&)=default |
template<class Exception > | |
bool | parse_error (std::size_t, const std::string &, const Exception &ex) |
bool | start_array (std::size_t len) |
bool | start_object (std::size_t len) |
bool | string (string_t &val) |
Private Member Functions | |
template<typename Value > | |
std::pair< bool, BasicJsonType * > | handle_value (Value &&v, const bool skip_callback=false) |
Private Attributes | |
const bool | allow_exceptions = true |
whether to throw exceptions in case of errors More... | |
const parser_callback_t | callback = nullptr |
callback function More... | |
BasicJsonType | discarded = BasicJsonType::value_t::discarded |
a discarded value for the callback More... | |
bool | errored = false |
whether a syntax error occurred More... | |
std::vector< bool > | keep_stack {} |
stack to manage which values to keep More... | |
std::vector< bool > | key_keep_stack {} |
stack to manage which object keys to keep More... | |
BasicJsonType * | object_element = nullptr |
helper to hold the reference for the next object element More... | |
std::vector< BasicJsonType * > | ref_stack {} |
stack to model hierarchy of values More... | |
BasicJsonType & | root |
the parsed JSON value More... | |
using nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::binary_t = typename BasicJsonType::binary_t |
using nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::number_float_t = typename BasicJsonType::number_float_t |
using nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::number_integer_t = typename BasicJsonType::number_integer_t |
using nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::number_unsigned_t = typename BasicJsonType::number_unsigned_t |
using nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::parse_event_t = typename BasicJsonType::parse_event_t |
using nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::parser_callback_t = typename BasicJsonType::parser_callback_t |
using nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::string_t = typename BasicJsonType::string_t |
|
inline |
Definition at line 5581 of file json.h.
References nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::keep_stack.
|
delete |
|
default |
|
default |
|
inline |
Definition at line 5632 of file json.h.
References nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::handle_value().
|
inline |
Definition at line 5602 of file json.h.
References nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::handle_value().
|
inline |
Definition at line 5719 of file json.h.
References nlohmann::detail::array_end, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::callback, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::discarded, JSON_ASSERT, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::keep_stack, and nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::ref_stack.
|
inline |
Definition at line 5673 of file json.h.
References nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::callback, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::discarded, JSON_ASSERT, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::keep_stack, nlohmann::detail::object_end, and nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::ref_stack.
|
inlineprivate |
[in] | v | value to add to the JSON value we build during parsing |
[in] | skip_callback | whether we should skip calling the callback function; this is required after start_array() and start_object() SAX events, because otherwise we would call the callback function with an empty array or object, respectively. |
Definition at line 5782 of file json.h.
References nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::callback, JSON_ASSERT, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::keep_stack, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::key_keep_stack, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::object_element, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::ref_stack, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::root, and nlohmann::detail::value.
Referenced by nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::binary(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::boolean(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::null(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::number_float(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::number_integer(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::number_unsigned(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::start_array(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::start_object(), and nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::string().
|
inlineconstexpr |
Definition at line 5760 of file json.h.
References nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::errored.
Referenced by nlohmann::detail::parser< BasicJsonType, InputAdapterType >::parse().
|
inline |
Definition at line 5656 of file json.h.
References nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::callback, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::discarded, bianchi11ax::k, nlohmann::detail::key, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::key_keep_stack, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::object_element, and nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::ref_stack.
|
inline |
Definition at line 5596 of file json.h.
References nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::handle_value().
|
inline |
Definition at line 5620 of file json.h.
References nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::handle_value().
|
inline |
Definition at line 5608 of file json.h.
References nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::handle_value().
|
inline |
Definition at line 5614 of file json.h.
References nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::handle_value().
|
delete |
|
default |
|
inline |
Definition at line 5748 of file json.h.
References nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::allow_exceptions, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::errored, and JSON_THROW.
Referenced by nlohmann::detail::parser< BasicJsonType, InputAdapterType >::parse().
|
inline |
Definition at line 5702 of file json.h.
References nlohmann::detail::array_start, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::callback, nlohmann::detail::out_of_range::create(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::discarded, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::handle_value(), JSON_HEDLEY_UNLIKELY, JSON_THROW, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::keep_stack, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::ref_stack, and nlohmann::to_string().
|
inline |
Definition at line 5638 of file json.h.
References nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::callback, nlohmann::detail::out_of_range::create(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::discarded, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::handle_value(), JSON_HEDLEY_UNLIKELY, JSON_THROW, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::keep_stack, nlohmann::detail::object_start, nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::ref_stack, and nlohmann::to_string().
|
inline |
Definition at line 5626 of file json.h.
References nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::handle_value().
|
private |
whether to throw exceptions in case of errors
Definition at line 5860 of file json.h.
Referenced by nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::parse_error().
|
private |
callback function
Definition at line 5858 of file json.h.
Referenced by nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::end_array(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::end_object(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::handle_value(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::key(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::start_array(), and nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::start_object().
|
private |
a discarded value for the callback
Definition at line 5862 of file json.h.
Referenced by nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::end_array(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::end_object(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::key(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::start_array(), and nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::start_object().
|
private |
whether a syntax error occurred
Definition at line 5856 of file json.h.
Referenced by nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::is_errored(), and nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::parse_error().
|
private |
stack to manage which values to keep
Definition at line 5850 of file json.h.
Referenced by nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::json_sax_dom_callback_parser(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::end_array(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::end_object(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::handle_value(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::start_array(), and nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::start_object().
|
private |
stack to manage which object keys to keep
Definition at line 5852 of file json.h.
Referenced by nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::handle_value(), and nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::key().
|
private |
helper to hold the reference for the next object element
Definition at line 5854 of file json.h.
Referenced by nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::handle_value(), and nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::key().
|
private |
stack to model hierarchy of values
Definition at line 5848 of file json.h.
Referenced by nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::end_array(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::end_object(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::handle_value(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::key(), nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::start_array(), and nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::start_object().
|
private |
the parsed JSON value
Definition at line 5846 of file json.h.
Referenced by nlohmann::detail::json_sax_dom_callback_parser< BasicJsonType >::handle_value().