#include "json.h"
Collaboration diagram for detail::json_sax_dom_callback_parser< BasicJsonType, InputAdapterType >:Public Types | |
| using | binary_t = typename BasicJsonType::binary_t |
| using | lexer_t = lexer< BasicJsonType, InputAdapterType > |
| 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 |
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 | |
| const parser_callback_t | callback = nullptr |
| callback function | |
| BasicJsonType | discarded = BasicJsonType::value_t::discarded |
| a discarded value for the callback | |
| bool | errored = false |
| whether a syntax error occurred | |
| std::vector< bool > | keep_stack {} |
| stack to manage which values to keep | |
| std::vector< bool > | key_keep_stack {} |
| stack to manage which object keys to keep | |
| lexer_t * | m_lexer_ref = nullptr |
| the lexer reference to obtain the current position | |
| BasicJsonType * | object_element = nullptr |
| helper to hold the reference for the next object element | |
| std::vector< BasicJsonType * > | ref_stack {} |
| stack to model hierarchy of values | |
| BasicJsonType & | root |
| the parsed JSON value | |
| using detail::json_sax_dom_callback_parser< BasicJsonType, InputAdapterType >::binary_t = typename BasicJsonType::binary_t |
| using detail::json_sax_dom_callback_parser< BasicJsonType, InputAdapterType >::lexer_t = lexer<BasicJsonType, InputAdapterType> |
| using detail::json_sax_dom_callback_parser< BasicJsonType, InputAdapterType >::number_float_t = typename BasicJsonType::number_float_t |
| using detail::json_sax_dom_callback_parser< BasicJsonType, InputAdapterType >::number_integer_t = typename BasicJsonType::number_integer_t |
| using detail::json_sax_dom_callback_parser< BasicJsonType, InputAdapterType >::number_unsigned_t = typename BasicJsonType::number_unsigned_t |
| using detail::json_sax_dom_callback_parser< BasicJsonType, InputAdapterType >::parse_event_t = typename BasicJsonType::parse_event_t |
| using detail::json_sax_dom_callback_parser< BasicJsonType, InputAdapterType >::parser_callback_t = typename BasicJsonType::parser_callback_t |
| using detail::json_sax_dom_callback_parser< BasicJsonType, InputAdapterType >::string_t = typename BasicJsonType::string_t |
|
inline |
|
delete |
|
default |
|
default |
|
inline |
|
inline |
|
inline |
Definition at line 9372 of file json.h.
References detail::discarded, and JSON_ASSERT.
|
inline |
Definition at line 9290 of file json.h.
References detail::discarded, and JSON_ASSERT.
|
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 9518 of file json.h.
References JSON_ASSERT.
|
inlineconstexpr |
Definition at line 9431 of file json.h.
Referenced by detail::parser< BasicJsonType, InputAdapterType >::parse().
Here is the caller graph for this function:
|
inline |
Definition at line 9273 of file json.h.
References detail::discarded.
|
inline |
|
inline |
|
inline |
|
inline |
|
delete |
|
default |
|
inline |
Definition at line 9419 of file json.h.
References JSON_THROW.
Referenced by detail::parser< BasicJsonType, InputAdapterType >::parse().
Here is the caller graph for this function:
|
inline |
Definition at line 9340 of file json.h.
References detail::concat(), detail::discarded, JSON_HEDLEY_UNLIKELY, JSON_THROW, and detail::unknown_size().
Here is the call graph for this function:
|
inline |
Definition at line 9241 of file json.h.
References detail::concat(), detail::discarded, JSON_HEDLEY_UNLIKELY, JSON_THROW, and detail::unknown_size().
Here is the call graph for this function:
|
inline |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |
|
private |