|
rapidyaml
0.7.2
parse and emit YAML, and do it fast
|
The event handler to create a ryml Tree. More...
#include <event_handler_tree.hpp>
Public Types | |
| using | pfn_relocate_arena = detail::pfn_relocate_arena |
types | |
| using | state = EventHandlerTreeState |
Public Member Functions | |
| void | check_trailing_doc_token () const |
| Check whether the current parse tokens are trailing on the previous doc, and raise an error if they are. More... | |
construction and resetting | |
| EventHandlerTree () | |
| EventHandlerTree (Callbacks const &cb) | |
| EventHandlerTree (Tree *tree, id_type id) | |
| void | reset (Tree *tree, id_type id) |
parse events | |
| void | start_parse (const char *filename, detail::pfn_relocate_arena relocate_arena, void *relocate_arena_data) |
| void | finish_parse () |
| void | cancel_parse () |
YAML stream events | |
| void | begin_stream () const noexcept |
| void | end_stream () const noexcept |
YAML document events | |
| void | begin_doc () |
| implicit doc start (without —) More... | |
| void | end_doc () |
| implicit doc end (without ...) More... | |
| void | begin_doc_expl () |
| explicit doc start, with — More... | |
| void | end_doc_expl () |
| explicit doc end, with ... More... | |
YAML map events | |
| void | begin_map_key_flow () |
| void | begin_map_key_block () |
| void | begin_map_val_flow () |
| void | begin_map_val_block () |
| void | end_map () |
YAML seq events | |
| void | begin_seq_key_flow () |
| void | begin_seq_key_block () |
| void | begin_seq_val_flow () |
| void | begin_seq_val_block () |
| void | end_seq () |
YAML structure events | |
| void | add_sibling () |
| void | actually_val_is_first_key_of_new_map_flow () |
| set the previous val as the first key of a new map, with flow style. More... | |
| void | actually_val_is_first_key_of_new_map_block () |
| like its flow counterpart, but this function can only be called after the end of a flow-val at root or doc level. More... | |
YAML scalar events | |
| void | set_key_scalar_plain (csubstr scalar) noexcept |
| void | set_val_scalar_plain (csubstr scalar) noexcept |
| void | set_key_scalar_dquoted (csubstr scalar) noexcept |
| void | set_val_scalar_dquoted (csubstr scalar) noexcept |
| void | set_key_scalar_squoted (csubstr scalar) noexcept |
| void | set_val_scalar_squoted (csubstr scalar) noexcept |
| void | set_key_scalar_literal (csubstr scalar) noexcept |
| void | set_val_scalar_literal (csubstr scalar) noexcept |
| void | set_key_scalar_folded (csubstr scalar) noexcept |
| void | set_val_scalar_folded (csubstr scalar) noexcept |
| void | mark_key_scalar_unfiltered () noexcept |
| void | mark_val_scalar_unfiltered () noexcept |
YAML anchor/reference events | |
| void | set_key_anchor (csubstr anchor) |
| void | set_val_anchor (csubstr anchor) |
| void | set_key_ref (csubstr ref) |
| void | set_val_ref (csubstr ref) |
YAML tag events | |
| void | set_key_tag (csubstr tag) noexcept |
| void | set_val_tag (csubstr tag) noexcept |
YAML directive events | |
| void | add_directive (csubstr directive) |
arena functions | |
| substr | alloc_arena (size_t len) |
| substr | alloc_arena (size_t len, substr *relocated) |
Public Attributes | |
| detail::stack< state > | m_stack |
| state * | m_curr |
| current stack level: top of the stack. cached here for easier access. More... | |
| state * | m_parent |
| parent of the current stack level. More... | |
| pfn_relocate_arena | m_relocate_arena |
| callback when the arena gets relocated More... | |
| void * | m_relocate_arena_data |
Protected Member Functions | |
| void | _stack_start_parse (const char *filename, pfn_relocate_arena relocate_arena, void *relocate_arena_data) |
| void | _stack_finish_parse () |
| void | _stack_reset_root () |
| void | _stack_reset_non_root () |
| void | _stack_push () |
| void | _stack_pop () |
| bool | _stack_should_push_on_begin_doc () const |
| bool | _stack_should_pop_on_end_doc () const |
| void | _stack_relocate_to_new_arena (csubstr prev, substr curr) |
| substr | _stack_relocate_to_new_arena (csubstr s, csubstr prev, substr curr) |
The event handler to create a ryml Tree.
See the documentation for Event Handlers, which has important notes about the event model used by rapidyaml.
Definition at line 31 of file event_handler_tree.hpp.
Definition at line 37 of file event_handler_tree.hpp.
|
inherited |
Definition at line 41 of file event_handler_stack.hpp.
|
inline |
Definition at line 64 of file event_handler_tree.hpp.
|
inline |
Definition at line 65 of file event_handler_tree.hpp.
Definition at line 66 of file event_handler_tree.hpp.
Definition at line 71 of file event_handler_tree.hpp.
References c4::yml::Tree::callbacks(), c4::yml::Tree::capacity(), c4::yml::Tree::has_key(), c4::yml::Tree::is_map(), c4::yml::Tree::is_root(), and c4::yml::Tree::parent().
|
inline |
Definition at line 105 of file event_handler_tree.hpp.
|
inline |
Definition at line 111 of file event_handler_tree.hpp.
|
inline |
Definition at line 132 of file event_handler_tree.hpp.
|
inlinenoexcept |
Definition at line 144 of file event_handler_tree.hpp.
|
inlinenoexcept |
Definition at line 146 of file event_handler_tree.hpp.
|
inline |
implicit doc start (without —)
Definition at line 156 of file event_handler_tree.hpp.
References c4::yml::DOC.
|
inline |
implicit doc end (without ...)
Definition at line 168 of file event_handler_tree.hpp.
|
inline |
explicit doc start, with —
Definition at line 180 of file event_handler_tree.hpp.
References c4::yml::DOC.
|
inline |
|
inline |
Definition at line 232 of file event_handler_tree.hpp.
|
inline |
Definition at line 236 of file event_handler_tree.hpp.
|
inline |
Definition at line 241 of file event_handler_tree.hpp.
References _has_any_, c4::yml::FLOW_SL, c4::yml::MAP, and c4::yml::VAL.
|
inline |
Definition at line 249 of file event_handler_tree.hpp.
References _has_any_, c4::yml::BLOCK, c4::yml::MAP, and c4::yml::VAL.
|
inline |
Definition at line 258 of file event_handler_tree.hpp.
|
inline |
Definition at line 271 of file event_handler_tree.hpp.
|
inline |
Definition at line 275 of file event_handler_tree.hpp.
|
inline |
Definition at line 280 of file event_handler_tree.hpp.
References _has_any_, c4::yml::FLOW_SL, c4::yml::SEQ, and c4::yml::VAL.
|
inline |
Definition at line 288 of file event_handler_tree.hpp.
References _has_any_, c4::yml::BLOCK, c4::yml::SEQ, and c4::yml::VAL.
|
inline |
Definition at line 297 of file event_handler_tree.hpp.
|
inline |
|
inline |
set the previous val as the first key of a new map, with flow style.
See the documentation for Event Handlers, which has important notes about this event.
Definition at line 327 of file event_handler_tree.hpp.
References c4::yml::_VALMASK, c4::yml::NodeData::m_key, c4::yml::NodeData::m_type, and c4::yml::VAL_STYLE.
|
inline |
like its flow counterpart, but this function can only be called after the end of a flow-val at root or doc level.
See the documentation for Event Handlers, which has important notes about this event.
Definition at line 349 of file event_handler_tree.hpp.
|
inlinenoexcept |
Definition at line 362 of file event_handler_tree.hpp.
References c4::yml::KEY, and c4::yml::KEY_PLAIN.
|
inlinenoexcept |
Definition at line 368 of file event_handler_tree.hpp.
References c4::yml::VAL, and c4::yml::VAL_PLAIN.
|
inlinenoexcept |
Definition at line 376 of file event_handler_tree.hpp.
References c4::yml::KEY, and c4::yml::KEY_DQUO.
|
inlinenoexcept |
Definition at line 382 of file event_handler_tree.hpp.
References c4::yml::VAL, and c4::yml::VAL_DQUO.
|
inlinenoexcept |
Definition at line 390 of file event_handler_tree.hpp.
References c4::yml::KEY, and c4::yml::KEY_SQUO.
|
inlinenoexcept |
Definition at line 396 of file event_handler_tree.hpp.
References c4::yml::VAL, and c4::yml::VAL_SQUO.
|
inlinenoexcept |
Definition at line 404 of file event_handler_tree.hpp.
References c4::yml::KEY, and c4::yml::KEY_LITERAL.
|
inlinenoexcept |
Definition at line 410 of file event_handler_tree.hpp.
References c4::yml::VAL, and c4::yml::VAL_LITERAL.
|
inlinenoexcept |
Definition at line 418 of file event_handler_tree.hpp.
References c4::yml::KEY, and c4::yml::KEY_FOLDED.
|
inlinenoexcept |
Definition at line 424 of file event_handler_tree.hpp.
References c4::yml::VAL, and c4::yml::VAL_FOLDED.
|
inlinenoexcept |
Definition at line 432 of file event_handler_tree.hpp.
References c4::yml::KEY_UNFILT.
|
inlinenoexcept |
Definition at line 436 of file event_handler_tree.hpp.
References c4::yml::VAL_UNFILT.
|
inline |
Definition at line 448 of file event_handler_tree.hpp.
References _has_any_, c4::yml::KEYANCH, and c4::yml::KEYREF.
|
inline |
Definition at line 458 of file event_handler_tree.hpp.
References _has_any_, c4::yml::VALANCH, and c4::yml::VALREF.
|
inline |
Definition at line 469 of file event_handler_tree.hpp.
References _has_any_, c4::yml::KEY, c4::yml::KEYANCH, and c4::yml::KEYREF.
|
inline |
Definition at line 480 of file event_handler_tree.hpp.
References _has_any_, c4::yml::VAL, c4::yml::VALANCH, and c4::yml::VALREF.
|
inlinenoexcept |
|
inlinenoexcept |
|
inline |
Definition at line 519 of file event_handler_tree.hpp.
|
inline |
Definition at line 549 of file event_handler_tree.hpp.
|
inline |
Definition at line 560 of file event_handler_tree.hpp.
|
inlineprotectedinherited |
Definition at line 58 of file event_handler_stack.hpp.
|
inlineprotectedinherited |
Definition at line 68 of file event_handler_stack.hpp.
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
Definition at line 91 of file event_handler_stack.hpp.
|
inlineprotectedinherited |
Definition at line 99 of file event_handler_stack.hpp.
|
inlineprotectedinherited |
Definition at line 120 of file event_handler_stack.hpp.
|
inlineprotectedinherited |
Definition at line 126 of file event_handler_stack.hpp.
|
inlineprotectedinherited |
Definition at line 134 of file event_handler_stack.hpp.
|
inlineprotectedinherited |
Definition at line 150 of file event_handler_stack.hpp.
|
inlineinherited |
Check whether the current parse tokens are trailing on the previous doc, and raise an error if they are.
This function is called by the parse engine (not the event handler) before a doc is started.
Definition at line 165 of file event_handler_stack.hpp.
|
inherited |
Definition at line 45 of file event_handler_stack.hpp.
|
inherited |
current stack level: top of the stack. cached here for easier access.
Definition at line 46 of file event_handler_stack.hpp.
|
inherited |
parent of the current stack level.
Definition at line 47 of file event_handler_stack.hpp.
|
inherited |
callback when the arena gets relocated
Definition at line 48 of file event_handler_stack.hpp.
|
inherited |
Definition at line 49 of file event_handler_stack.hpp.