SAX implementation to create a JSON value from SAX events. More...
#include <json.hpp>
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 | string_t = typename BasicJsonType::string_t |
Public Member Functions | |
| bool | binary (binary_t &val) |
| bool | boolean (bool val) |
| bool | end_array () |
| bool | end_object () |
| constexpr bool | is_errored () const |
| json_sax_dom_parser (BasicJsonType &r, const bool allow_exceptions_=true) | |
| json_sax_dom_parser (const json_sax_dom_parser &)=delete | |
| json_sax_dom_parser (json_sax_dom_parser &&)=default | |
| 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_parser & | operator= (const json_sax_dom_parser &)=delete |
| json_sax_dom_parser & | operator= (json_sax_dom_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) |
| ~json_sax_dom_parser ()=default | |
SAX implementation to create a JSON value from SAX events.
This class implements the json_sax interface and processes the SAX events to create a JSON value which makes it basically a DOM parser. The structure or hierarchy of the JSON value is managed by the stack ref_stack which contains a pointer to the respective array or object for each recursion depth.
After successful parsing, the value that is passed by reference to the constructor contains the parsed value.
| BasicJsonType | the JSON type |
| using nlohmann::detail::json_sax_dom_parser< BasicJsonType >::binary_t = typename BasicJsonType::binary_t |
| using nlohmann::detail::json_sax_dom_parser< BasicJsonType >::number_float_t = typename BasicJsonType::number_float_t |
| using nlohmann::detail::json_sax_dom_parser< BasicJsonType >::number_integer_t = typename BasicJsonType::number_integer_t |
| using nlohmann::detail::json_sax_dom_parser< BasicJsonType >::number_unsigned_t = typename BasicJsonType::number_unsigned_t |
| using nlohmann::detail::json_sax_dom_parser< BasicJsonType >::string_t = typename BasicJsonType::string_t |
|
explicit |
| [in,out] | r | reference to a JSON value that is manipulated while parsing |
| [in] | allow_exceptions_ | whether parse errors yield exceptions |
|
delete |
|
default |
|
default |
| bool nlohmann::detail::json_sax_dom_parser< BasicJsonType >::binary | ( | binary_t & | val | ) |
References draftfunctions.move::move().
| bool nlohmann::detail::json_sax_dom_parser< BasicJsonType >::boolean | ( | bool | val | ) |
| bool nlohmann::detail::json_sax_dom_parser< BasicJsonType >::end_array | ( | ) |
| bool nlohmann::detail::json_sax_dom_parser< BasicJsonType >::end_object | ( | ) |
|
constexpr |
| bool nlohmann::detail::json_sax_dom_parser< BasicJsonType >::key | ( | string_t & | val | ) |
Referenced by Mod.Show.SceneDetail.SceneDetail::full_key().
| bool nlohmann::detail::json_sax_dom_parser< BasicJsonType >::null | ( | ) |
| bool nlohmann::detail::json_sax_dom_parser< BasicJsonType >::number_float | ( | number_float_t | val, |
| const string_t & | |||
| ) |
| bool nlohmann::detail::json_sax_dom_parser< BasicJsonType >::number_integer | ( | number_integer_t | val | ) |
| bool nlohmann::detail::json_sax_dom_parser< BasicJsonType >::number_unsigned | ( | number_unsigned_t | val | ) |
|
delete |
|
default |
| bool nlohmann::detail::json_sax_dom_parser< BasicJsonType >::parse_error | ( | std::size_t | , |
| const std::string & | , | ||
| const Exception & | ex | ||
| ) |
| bool nlohmann::detail::json_sax_dom_parser< BasicJsonType >::start_array | ( | std::size_t | len | ) |
References draftfunctions.array::array(), and nlohmann::detail::out_of_range::create().
| bool nlohmann::detail::json_sax_dom_parser< BasicJsonType >::start_object | ( | std::size_t | len | ) |
References nlohmann::detail::out_of_range::create().
| bool nlohmann::detail::json_sax_dom_parser< BasicJsonType >::string | ( | string_t & | val | ) |
Referenced by Spreadsheet_legacy.MathParser::hasNext(), and Spreadsheet_legacy.MathParser::peek().