|
rapidyaml
0.9.0
parse and emit YAML, and do it fast
|
The event handler producing standard YAML events as used in the YAML test suite. More...
#include <test_suite_event_handler.hpp>
Public Types | |
| using | pfn_relocate_arena = detail::pfn_relocate_arena |
types | |
| using | state = EventHandlerYamlStdState |
| using | EventSink = extra::string |
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 | |
| EventHandlerYamlStd () | |
| EventHandlerYamlStd (Callbacks const &cb) | |
| EventHandlerYamlStd (EventSink *sink, Callbacks const &cb) | |
| EventHandlerYamlStd (EventSink *sink) | |
| void | reset () |
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 () |
| void | end_stream () |
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 functions | |
| 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_empty () noexcept |
| void | set_val_scalar_plain_empty () noexcept |
| void | set_key_scalar_plain (csubstr scalar) |
| void | set_val_scalar_plain (csubstr scalar) |
| void | set_key_scalar_dquoted (csubstr scalar) |
| void | set_val_scalar_dquoted (csubstr scalar) |
| void | set_key_scalar_squoted (csubstr scalar) |
| void | set_val_scalar_squoted (csubstr scalar) |
| void | set_key_scalar_literal (csubstr scalar) |
| void | set_val_scalar_literal (csubstr scalar) |
| void | set_key_scalar_folded (csubstr scalar) |
| void | set_val_scalar_folded (csubstr scalar) |
| void | mark_key_scalar_unfiltered () |
| void | mark_val_scalar_unfiltered () |
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) |
| void | set_val_tag (csubstr tag) |
YAML directive events | |
| void | add_directive (csubstr directive) |
YAML arena events | |
| 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 producing standard YAML events as used in the YAML test suite.
See the documentation for Event Handlers, which has important notes about the event model used by rapidyaml.
This class is used only in the CI of this project, and in the application used as part of the standard YAML playground. It is not part of the library and is not installed. *
Definition at line 49 of file test_suite_event_handler.hpp.
Definition at line 56 of file test_suite_event_handler.hpp.
| using c4::yml::EventHandlerYamlStd::EventSink = extra::string |
Definition at line 58 of file test_suite_event_handler.hpp.
|
inherited |
Definition at line 47 of file event_handler_stack.hpp.
|
inline |
Definition at line 85 of file test_suite_event_handler.hpp.
|
inline |
Definition at line 86 of file test_suite_event_handler.hpp.
Definition at line 87 of file test_suite_event_handler.hpp.
|
inline |
Definition at line 91 of file test_suite_event_handler.hpp.
|
inline |
Definition at line 93 of file test_suite_event_handler.hpp.
References c4::yml::RTOP, and c4::yml::RUNK.
|
inline |
Definition at line 116 of file test_suite_event_handler.hpp.
|
inline |
Definition at line 121 of file test_suite_event_handler.hpp.
|
inline |
Definition at line 128 of file test_suite_event_handler.hpp.
|
inline |
Definition at line 142 of file test_suite_event_handler.hpp.
|
inline |
Definition at line 147 of file test_suite_event_handler.hpp.
|
inline |
implicit doc start (without —)
Definition at line 161 of file test_suite_event_handler.hpp.
References c4::yml::DOC.
|
inline |
implicit doc end (without ...)
Definition at line 174 of file test_suite_event_handler.hpp.
|
inline |
explicit doc start, with —
Definition at line 186 of file test_suite_event_handler.hpp.
References c4::yml::DOC.
|
inline |
|
inline |
Definition at line 218 of file test_suite_event_handler.hpp.
References _has_any_, c4::yml::FLOW_SL, c4::yml::MAP, and c4::yml::VAL.
|
inline |
Definition at line 228 of file test_suite_event_handler.hpp.
References _has_any_, c4::yml::BLOCK, c4::yml::MAP, and c4::yml::VAL.
|
inline |
Definition at line 239 of file test_suite_event_handler.hpp.
References _has_any_, c4::yml::FLOW_SL, c4::yml::MAP, and c4::yml::VAL.
|
inline |
Definition at line 249 of file test_suite_event_handler.hpp.
References _has_any_, c4::yml::BLOCK, c4::yml::MAP, and c4::yml::VAL.
|
inline |
Definition at line 260 of file test_suite_event_handler.hpp.
|
inline |
Definition at line 273 of file test_suite_event_handler.hpp.
References _has_any_, c4::yml::FLOW_SL, c4::yml::SEQ, and c4::yml::VAL.
|
inline |
Definition at line 283 of file test_suite_event_handler.hpp.
References _has_any_, c4::yml::BLOCK, c4::yml::SEQ, and c4::yml::VAL.
|
inline |
Definition at line 294 of file test_suite_event_handler.hpp.
References _has_any_, c4::yml::FLOW_SL, c4::yml::SEQ, and c4::yml::VAL.
|
inline |
Definition at line 304 of file test_suite_event_handler.hpp.
References _has_any_, c4::yml::BLOCK, c4::yml::SEQ, and c4::yml::VAL.
|
inline |
Definition at line 315 of file test_suite_event_handler.hpp.
|
inline |
Definition at line 328 of file test_suite_event_handler.hpp.
|
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 340 of file test_suite_event_handler.hpp.
References c4::yml::_VALMASK, 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 362 of file test_suite_event_handler.hpp.
References c4::yml::npos.
|
inlinenoexcept |
Definition at line 396 of file test_suite_event_handler.hpp.
References c4::yml::KEY, c4::yml::KEY_PLAIN, and c4::yml::KEYNIL.
|
inlinenoexcept |
Definition at line 402 of file test_suite_event_handler.hpp.
References c4::yml::VAL, c4::yml::VAL_PLAIN, and c4::yml::VALNIL.
|
inline |
Definition at line 409 of file test_suite_event_handler.hpp.
References c4::yml::KEY, and c4::yml::KEY_PLAIN.
|
inline |
Definition at line 415 of file test_suite_event_handler.hpp.
References c4::yml::VAL, and c4::yml::VAL_PLAIN.
|
inline |
Definition at line 423 of file test_suite_event_handler.hpp.
References c4::yml::KEY, and c4::yml::KEY_DQUO.
|
inline |
Definition at line 429 of file test_suite_event_handler.hpp.
References c4::yml::VAL, and c4::yml::VAL_DQUO.
|
inline |
Definition at line 437 of file test_suite_event_handler.hpp.
References c4::yml::KEY, and c4::yml::KEY_SQUO.
|
inline |
Definition at line 443 of file test_suite_event_handler.hpp.
References c4::yml::VAL, and c4::yml::VAL_SQUO.
|
inline |
Definition at line 451 of file test_suite_event_handler.hpp.
References c4::yml::KEY, and c4::yml::KEY_LITERAL.
|
inline |
Definition at line 457 of file test_suite_event_handler.hpp.
References c4::yml::VAL, and c4::yml::VAL_LITERAL.
|
inline |
Definition at line 465 of file test_suite_event_handler.hpp.
References c4::yml::KEY, and c4::yml::KEY_FOLDED.
|
inline |
Definition at line 471 of file test_suite_event_handler.hpp.
References c4::yml::VAL, and c4::yml::VAL_FOLDED.
|
inline |
Definition at line 479 of file test_suite_event_handler.hpp.
|
inline |
Definition at line 483 of file test_suite_event_handler.hpp.
|
inline |
Definition at line 495 of file test_suite_event_handler.hpp.
References _has_any_, and c4::yml::KEYANCH.
|
inline |
Definition at line 504 of file test_suite_event_handler.hpp.
References _has_any_, c4::yml::VALANCH, and c4::yml::VALREF.
|
inline |
Definition at line 514 of file test_suite_event_handler.hpp.
References _has_any_, c4::yml::KEY, c4::yml::KEYANCH, and c4::yml::KEYREF.
|
inline |
Definition at line 525 of file test_suite_event_handler.hpp.
References _has_any_, c4::yml::VAL, c4::yml::VALANCH, and c4::yml::VALREF.
|
inline |
|
inline |
|
inline |
Definition at line 564 of file test_suite_event_handler.hpp.
References RYML_MAX_TAG_DIRECTIVES.
|
inline |
Definition at line 595 of file test_suite_event_handler.hpp.
References c4::to_substr().
|
inline |
Definition at line 607 of file test_suite_event_handler.hpp.
References c4::to_substr().
|
inlineprotectedinherited |
Definition at line 64 of file event_handler_stack.hpp.
|
inlineprotectedinherited |
Definition at line 74 of file event_handler_stack.hpp.
|
inlineprotectedinherited |
|
inlineprotectedinherited |
|
inlineprotectedinherited |
Definition at line 97 of file event_handler_stack.hpp.
|
inlineprotectedinherited |
Definition at line 105 of file event_handler_stack.hpp.
|
inlineprotectedinherited |
Definition at line 126 of file event_handler_stack.hpp.
|
inlineprotectedinherited |
Definition at line 132 of file event_handler_stack.hpp.
|
inlineprotectedinherited |
Definition at line 140 of file event_handler_stack.hpp.
|
inlineprotectedinherited |
Definition at line 156 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 171 of file event_handler_stack.hpp.
|
inherited |
Definition at line 51 of file event_handler_stack.hpp.
|
inherited |
current stack level: top of the stack. cached here for easier access.
Definition at line 52 of file event_handler_stack.hpp.
|
inherited |
parent of the current stack level.
Definition at line 53 of file event_handler_stack.hpp.
|
inherited |
callback when the arena gets relocated
Definition at line 54 of file event_handler_stack.hpp.
|
inherited |
Definition at line 55 of file event_handler_stack.hpp.