|
rapidyaml
0.9.0
parse and emit YAML, and do it fast
|
#include <node.hpp>
Public Member Functions | |
node property getters | |
| NodeData const * | get () const RYML_NOEXCEPT |
| returns the data or null when the id is NONE More... | |
| template<class U = Impl> | |
| auto | get () RYML_NOEXCEPT -> NodeData * |
| returns the data or null when the id is NONE More... | |
| NodeType | type () const RYML_NOEXCEPT |
| Forward to Tree::type_str(). More... | |
| const char * | type_str () const RYML_NOEXCEPT |
| Forward to Tree::type_str(). More... | |
| csubstr | key () const RYML_NOEXCEPT |
| Forward to Tree::key(). More... | |
| csubstr | key_tag () const RYML_NOEXCEPT |
| Forward to Tree::key_tag(). More... | |
| csubstr | key_ref () const RYML_NOEXCEPT |
| Forward to Tree::key_ref(). More... | |
| csubstr | key_anchor () const RYML_NOEXCEPT |
| Forward to Tree::key_anchor(). More... | |
| csubstr | val () const RYML_NOEXCEPT |
| Forward to Tree::val(). More... | |
| csubstr | val_tag () const RYML_NOEXCEPT |
| Forward to Tree::val_tag(). More... | |
| csubstr | val_ref () const RYML_NOEXCEPT |
| Forward to Tree::val_ref(). More... | |
| csubstr | val_anchor () const RYML_NOEXCEPT |
| Forward to Tree::val_anchor(). More... | |
| NodeScalar const & | keysc () const RYML_NOEXCEPT |
| Forward to Tree::keysc(). More... | |
| NodeScalar const & | valsc () const RYML_NOEXCEPT |
| Forward to Tree::valsc(). More... | |
| bool | key_is_null () const RYML_NOEXCEPT |
| Forward to Tree::key_is_null(). More... | |
| bool | val_is_null () const RYML_NOEXCEPT |
| Forward to Tree::val_is_null(). More... | |
| bool | is_key_unfiltered () const noexcept |
| Forward to Tree::is_key_unfiltered(). More... | |
| bool | is_val_unfiltered () const noexcept |
| Forward to Tree::is_val_unfiltered(). More... | |
node type predicates | |
| bool | empty () const RYML_NOEXCEPT |
| Forward to Tree::empty(). More... | |
| bool | is_stream () const RYML_NOEXCEPT |
| Forward to Tree::is_stream(). More... | |
| bool | is_doc () const RYML_NOEXCEPT |
| Forward to Tree::is_doc(). More... | |
| bool | is_container () const RYML_NOEXCEPT |
| Forward to Tree::is_container(). More... | |
| bool | is_map () const RYML_NOEXCEPT |
| Forward to Tree::is_map(). More... | |
| bool | is_seq () const RYML_NOEXCEPT |
| Forward to Tree::is_seq(). More... | |
| bool | has_val () const RYML_NOEXCEPT |
| Forward to Tree::has_val(). More... | |
| bool | has_key () const RYML_NOEXCEPT |
| Forward to Tree::has_key(). More... | |
| bool | is_val () const RYML_NOEXCEPT |
| Forward to Tree::is_val(). More... | |
| bool | is_keyval () const RYML_NOEXCEPT |
| Forward to Tree::is_keyval(). More... | |
| bool | has_key_tag () const RYML_NOEXCEPT |
| Forward to Tree::has_key_tag(). More... | |
| bool | has_val_tag () const RYML_NOEXCEPT |
| Forward to Tree::has_val_tag(). More... | |
| bool | has_key_anchor () const RYML_NOEXCEPT |
| Forward to Tree::has_key_anchor(). More... | |
| bool | has_val_anchor () const RYML_NOEXCEPT |
| Forward to Tree::has_val_anchor(). More... | |
| bool | has_anchor () const RYML_NOEXCEPT |
| Forward to Tree::has_anchor(). More... | |
| bool | is_key_ref () const RYML_NOEXCEPT |
| Forward to Tree::is_key_ref(). More... | |
| bool | is_val_ref () const RYML_NOEXCEPT |
| Forward to Tree::is_val_ref(). More... | |
| bool | is_ref () const RYML_NOEXCEPT |
| Forward to Tree::is_ref(). More... | |
| bool | parent_is_seq () const RYML_NOEXCEPT |
| Forward to Tree::parent_is_seq(). More... | |
| bool | parent_is_map () const RYML_NOEXCEPT |
| Forward to Tree::parent_is_map(). More... | |
| bool | is_key_anchor () const noexcept |
| bool | is_val_hanchor () const noexcept |
| bool | is_anchor () const noexcept |
| bool | is_anchor_or_ref () const noexcept |
node container+scalar style predicates | |
| bool | type_has_any (NodeType_e bits) const RYML_NOEXCEPT |
| Forward to Tree::type_has_any(). More... | |
| bool | type_has_all (NodeType_e bits) const RYML_NOEXCEPT |
| Forward to Tree::type_has_all(). More... | |
| bool | type_has_none (NodeType_e bits) const RYML_NOEXCEPT |
| Forward to Tree::type_has_none(). More... | |
| bool | is_container_styled () const RYML_NOEXCEPT |
| Forward to Tree::is_container_styled(). More... | |
| bool | is_block () const RYML_NOEXCEPT |
| Forward to Tree::is_block(). More... | |
| bool | is_flow_sl () const RYML_NOEXCEPT |
| Forward to Tree::is_flow_sl(). More... | |
| bool | is_flow_ml () const RYML_NOEXCEPT |
| Forward to Tree::is_flow_ml(). More... | |
| bool | is_flow () const RYML_NOEXCEPT |
| Forward to Tree::is_flow(). More... | |
| bool | is_key_styled () const RYML_NOEXCEPT |
| Forward to Tree::is_key_styled(). More... | |
| bool | is_val_styled () const RYML_NOEXCEPT |
| Forward to Tree::is_val_styled(). More... | |
| bool | is_key_literal () const RYML_NOEXCEPT |
| Forward to Tree::is_key_literal(). More... | |
| bool | is_val_literal () const RYML_NOEXCEPT |
| Forward to Tree::is_val_literal(). More... | |
| bool | is_key_folded () const RYML_NOEXCEPT |
| Forward to Tree::is_key_folded(). More... | |
| bool | is_val_folded () const RYML_NOEXCEPT |
| Forward to Tree::is_val_folded(). More... | |
| bool | is_key_squo () const RYML_NOEXCEPT |
| Forward to Tree::is_key_squo(). More... | |
| bool | is_val_squo () const RYML_NOEXCEPT |
| Forward to Tree::is_val_squo(). More... | |
| bool | is_key_dquo () const RYML_NOEXCEPT |
| Forward to Tree::is_key_dquo(). More... | |
| bool | is_val_dquo () const RYML_NOEXCEPT |
| Forward to Tree::is_val_dquo(). More... | |
| bool | is_key_plain () const RYML_NOEXCEPT |
| Forward to Tree::is_key_plain(). More... | |
| bool | is_val_plain () const RYML_NOEXCEPT |
| Forward to Tree::is_val_plain(). More... | |
| bool | is_key_quoted () const RYML_NOEXCEPT |
| Forward to Tree::is_key_quoted(). More... | |
| bool | is_val_quoted () const RYML_NOEXCEPT |
| Forward to Tree::is_val_quoted(). More... | |
| bool | is_quoted () const RYML_NOEXCEPT |
| Forward to Tree::is_quoted(). More... | |
hierarchy predicates | |
| bool | is_root () const RYML_NOEXCEPT |
| Forward to Tree::is_root(). More... | |
| bool | has_parent () const RYML_NOEXCEPT |
| Forward to Tree::has_parent() Node must be readable. More... | |
| bool | is_ancestor (ConstImpl const &ancestor) const RYML_NOEXCEPT |
| Forward to Tree::is_ancestor() Node must be readable. More... | |
| bool | has_child (ConstImpl const &n) const RYML_NOEXCEPT |
| Forward to Tree::has_child(). More... | |
| bool | has_child (id_type node) const RYML_NOEXCEPT |
| Forward to Tree::has_child(). More... | |
| bool | has_child (csubstr name) const RYML_NOEXCEPT |
| Forward to Tree::has_child(). More... | |
| bool | has_children () const RYML_NOEXCEPT |
| Forward to Tree::has_child(). More... | |
| bool | has_sibling (ConstImpl const &n) const RYML_NOEXCEPT |
| Forward to Tree::has_sibling(). More... | |
| bool | has_sibling (id_type node) const RYML_NOEXCEPT |
| Forward to Tree::has_sibling(). More... | |
| bool | has_sibling (csubstr name) const RYML_NOEXCEPT |
| Forward to Tree::has_sibling(). More... | |
| bool | has_other_siblings () const RYML_NOEXCEPT |
| Forward to Tree::has_sibling(). More... | |
| bool | has_siblings () const RYML_NOEXCEPT |
hierarchy getters | |
| template<class U = Impl> | |
| auto | doc (id_type i) RYML_NOEXCEPT -> Impl |
| Forward to Tree::doc(). More... | |
| ConstImpl | doc (id_type i) const RYML_NOEXCEPT |
| Forward to Tree::doc(). More... | |
| template<class U = Impl> | |
| auto | parent () RYML_NOEXCEPT -> Impl |
| Forward to Tree::parent(). More... | |
| ConstImpl | parent () const RYML_NOEXCEPT |
| Forward to Tree::parent(). More... | |
| template<class U = Impl> | |
| auto | first_child () RYML_NOEXCEPT -> Impl |
| Forward to Tree::first_child(). More... | |
| ConstImpl | first_child () const RYML_NOEXCEPT |
| Forward to Tree::first_child(). More... | |
| template<class U = Impl> | |
| auto | last_child () RYML_NOEXCEPT -> Impl |
| Forward to Tree::last_child(). More... | |
| ConstImpl | last_child () const RYML_NOEXCEPT |
| Forward to Tree::last_child(). More... | |
| template<class U = Impl> | |
| auto | child (id_type pos) RYML_NOEXCEPT -> Impl |
| Forward to Tree::child(). More... | |
| ConstImpl | child (id_type pos) const RYML_NOEXCEPT |
| Forward to Tree::child(). More... | |
| template<class U = Impl> | |
| auto | find_child (csubstr name) RYML_NOEXCEPT -> Impl |
| Forward to Tree::first_child(). More... | |
| ConstImpl | find_child (csubstr name) const RYML_NOEXCEPT |
| Forward to Tree::first_child(). More... | |
| template<class U = Impl> | |
| auto | prev_sibling () RYML_NOEXCEPT -> Impl |
| Forward to Tree::prev_sibling(). More... | |
| ConstImpl | prev_sibling () const RYML_NOEXCEPT |
| Forward to Tree::prev_sibling(). More... | |
| template<class U = Impl> | |
| auto | next_sibling () RYML_NOEXCEPT -> Impl |
| Forward to Tree::next_sibling(). More... | |
| ConstImpl | next_sibling () const RYML_NOEXCEPT |
| Forward to Tree::next_sibling(). More... | |
| template<class U = Impl> | |
| auto | first_sibling () RYML_NOEXCEPT -> Impl |
| Forward to Tree::first_sibling(). More... | |
| ConstImpl | first_sibling () const RYML_NOEXCEPT |
| Forward to Tree::first_sibling(). More... | |
| template<class U = Impl> | |
| auto | last_sibling () RYML_NOEXCEPT -> Impl |
| Forward to Tree::last_sibling(). More... | |
| ConstImpl | last_sibling () const RYML_NOEXCEPT |
| Forward to Tree::last_sibling(). More... | |
| template<class U = Impl> | |
| auto | sibling (id_type pos) RYML_NOEXCEPT -> Impl |
| Forward to Tree::sibling(). More... | |
| ConstImpl | sibling (id_type pos) const RYML_NOEXCEPT |
| Forward to Tree::sibling(). More... | |
| template<class U = Impl> | |
| auto | find_sibling (csubstr name) RYML_NOEXCEPT -> Impl |
| Forward to Tree::find_sibling(). More... | |
| ConstImpl | find_sibling (csubstr name) const RYML_NOEXCEPT |
| Forward to Tree::find_sibling(). More... | |
| id_type | num_children () const RYML_NOEXCEPT |
| O(num_children). More... | |
| id_type | num_siblings () const RYML_NOEXCEPT |
| O(num_children). More... | |
| id_type | num_other_siblings () const RYML_NOEXCEPT |
| O(num_siblings). More... | |
| id_type | child_pos (ConstImpl const &n) const RYML_NOEXCEPT |
| O(num_children). More... | |
| id_type | sibling_pos (ConstImpl const &n) const RYML_NOEXCEPT |
| O(num_siblings). More... | |
| id_type | depth_asc () const RYML_NOEXCEPT |
| id_type | depth_desc () const RYML_NOEXCEPT |
| O(log(num_nodes)). More... | |
square_brackets | |
| template<class U = Impl> | |
| auto | operator[] (csubstr key) RYML_NOEXCEPT -> Impl |
| Find child by key; complexity is O(num_children). More... | |
| template<class U = Impl> | |
| auto | operator[] (id_type pos) RYML_NOEXCEPT -> Impl |
| Find child by position; complexity is O(pos). More... | |
| ConstImpl | operator[] (csubstr key) const RYML_NOEXCEPT |
| Find a child by key; complexity is O(num_children). More... | |
| ConstImpl | operator[] (id_type pos) const RYML_NOEXCEPT |
| Find a child by position; complexity is O(pos). More... | |
at | |
These functions are the analogue to operator[], with the difference that they emit an error instead of an assertion. That is, if any of the pre or post conditions is violated, an error is always emitted (resulting in a call to the error callback). | |
| template<class U = Impl> | |
| auto | at (csubstr key) -> Impl |
| Find child by key; complexity is O(num_children). More... | |
| template<class U = Impl> | |
| auto | at (id_type pos) -> Impl |
| Find child by position; complexity is O(pos). More... | |
| ConstImpl | at (csubstr key) const |
| Get a child by name, with error checking; complexity is O(num_children). More... | |
| ConstImpl | at (id_type pos) const |
| Get a child by position, with error checking; complexity is O(pos). More... | |
deserialization | |
| template<class T > | |
| ConstImpl const & | operator>> (T &v) const |
| deserialize the node's val to the given variable, forwarding to the user-overrideable read() function. More... | |
| template<class T > | |
| ConstImpl const & | operator>> (Key< T > v) const |
deserialize the node's key to the given variable, forwarding to the user-overrideable read() function; use key() to disambiguate; for example: node >> ryml::key(var) More... | |
| template<class T > | |
| bool | get_if (csubstr name, T *var) const |
| look for a child by name, if it exists assign to var. More... | |
| template<class T > | |
| bool | get_if (csubstr name, T *var, T const &fallback) const |
| look for a child by name, if it exists assign to var, otherwise default to fallback. More... | |
deserialization_base64 | |
| ConstImpl const & | operator>> (Key< fmt::base64_wrapper > w) const |
| deserialize the node's key as base64. More... | |
| ConstImpl const & | operator>> (fmt::base64_wrapper w) const |
| deserialize the node's val as base64. More... | |
| size_t | deserialize_key (fmt::base64_wrapper v) const |
| decode the base64-encoded key and assign the decoded blob to the given buffer/ More... | |
| size_t | deserialize_val (fmt::base64_wrapper v) const |
| decode the base64-encoded key and assign the decoded blob to the given buffer/ More... | |
iteration | |
| using | iterator = detail::child_iterator< Impl > |
| using | const_iterator = detail::child_iterator< ConstImpl > |
| using | children_view = detail::children_view_< Impl > |
| using | const_children_view = detail::children_view_< ConstImpl > |
| template<class U = Impl> | |
| auto | begin () RYML_NOEXCEPT -> iterator |
| get an iterator to the first child More... | |
| const_iterator | begin () const RYML_NOEXCEPT |
| get an iterator to the first child More... | |
| const_iterator | cbegin () const RYML_NOEXCEPT |
| get an iterator to the first child More... | |
| template<class U = Impl> | |
| auto | end () RYML_NOEXCEPT -> iterator |
| get an iterator to after the last child More... | |
| const_iterator | end () const RYML_NOEXCEPT |
| get an iterator to after the last child More... | |
| const_iterator | cend () const RYML_NOEXCEPT |
| get an iterator to after the last child More... | |
| template<class U = Impl> | |
| auto | children () RYML_NOEXCEPT -> children_view |
| get an iterable view over children More... | |
| const_children_view | children () const RYML_NOEXCEPT |
| get an iterable view over children More... | |
| const_children_view | cchildren () const RYML_NOEXCEPT |
| get an iterable view over children More... | |
| template<class U = Impl> | |
| auto | siblings () RYML_NOEXCEPT -> children_view |
| get an iterable view over all siblings (including the calling node) More... | |
| const_children_view | siblings () const RYML_NOEXCEPT |
| get an iterable view over all siblings (including the calling node) More... | |
| const_children_view | csiblings () const RYML_NOEXCEPT |
| get an iterable view over all siblings (including the calling node) More... | |
| template<class Visitor > | |
| bool | visit (Visitor fn, id_type indentation_level=0, bool skip_root=true) const RYML_NOEXCEPT |
| visit every child node calling fn(node) More... | |
| template<class Visitor , class U = Impl> | |
| auto | visit (Visitor fn, id_type indentation_level=0, bool skip_root=true) RYML_NOEXCEPT -> bool |
| visit every child node calling fn(node) More... | |
| template<class Visitor > | |
| bool | visit_stacked (Visitor fn, id_type indentation_level=0, bool skip_root=true) const RYML_NOEXCEPT |
| visit every child node calling fn(node, level) More... | |
| template<class Visitor , class U = Impl> | |
| auto | visit_stacked (Visitor fn, id_type indentation_level=0, bool skip_root=true) RYML_NOEXCEPT -> bool |
| visit every child node calling fn(node, level) More... | |
| using c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::iterator = detail::child_iterator<Impl> |
| using c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::const_iterator = detail::child_iterator<ConstImpl> |
| using c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::children_view = detail::children_view_<Impl> |
| using c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::const_children_view = detail::children_view_<ConstImpl> |
|
inline |
|
inline |
|
inline |
Forward to Tree::type_str().
Node must be readable.
Definition at line 204 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::type_str().
Node must be readable.
Definition at line 205 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::key().
Node must be readable.
Definition at line 207 of file node.hpp.
References _C4RR.
Referenced by c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::at(), c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::deserialize_key(), c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::operator[](), and sample::sample_quick_overview().
|
inline |
Forward to Tree::key_tag().
Node must be readable.
Definition at line 208 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::key_ref().
Node must be readable.
Definition at line 209 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::key_anchor().
Node must be readable.
Definition at line 210 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::val().
Node must be readable.
Definition at line 212 of file node.hpp.
References _C4RR.
Referenced by c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::deserialize_val(), sample::sample_create_trees(), sample::sample_quick_overview(), and sample::sample_tree_arena().
|
inline |
Forward to Tree::val_tag().
Node must be readable.
Definition at line 213 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::val_ref().
Node must be readable.
Definition at line 214 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::val_anchor().
Node must be readable.
Definition at line 215 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::keysc().
Node must be readable.
Definition at line 217 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::valsc().
Node must be readable.
Definition at line 218 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::key_is_null().
Node must be readable.
Definition at line 220 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::val_is_null().
Node must be readable.
Definition at line 221 of file node.hpp.
References _C4RR.
|
inlinenoexcept |
Forward to Tree::is_key_unfiltered().
Node must be readable.
Definition at line 223 of file node.hpp.
References _C4RR.
|
inlinenoexcept |
Forward to Tree::is_val_unfiltered().
Node must be readable.
Definition at line 224 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::empty().
Node must be readable.
Definition at line 233 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_stream().
Node must be readable.
Definition at line 234 of file node.hpp.
References _C4RR.
Referenced by sample::sample_docs(), and sample::sample_tags().
|
inline |
Forward to Tree::is_doc().
Node must be readable.
Definition at line 235 of file node.hpp.
References _C4RR.
Referenced by sample::sample_docs().
|
inline |
Forward to Tree::is_container().
Node must be readable.
Definition at line 236 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_map().
Node must be readable.
Definition at line 237 of file node.hpp.
References _C4RR.
Referenced by sample::sample_parse_in_arena(), sample::sample_parse_in_place(), sample::sample_parse_reuse_tree(), and sample::sample_quick_overview().
|
inline |
Forward to Tree::is_seq().
Node must be readable.
Definition at line 238 of file node.hpp.
References _C4RR.
Referenced by sample::sample_parse_reuse_tree(), and sample::sample_quick_overview().
|
inline |
Forward to Tree::has_val().
Node must be readable.
Definition at line 239 of file node.hpp.
References _C4RR.
Referenced by sample::sample_quick_overview().
|
inline |
Forward to Tree::has_key().
Node must be readable.
Definition at line 240 of file node.hpp.
References _C4RR.
Referenced by sample::sample_quick_overview().
|
inline |
Forward to Tree::is_val().
Node must be readable.
Definition at line 241 of file node.hpp.
References _C4RR.
Referenced by sample::sample_quick_overview().
|
inline |
Forward to Tree::is_keyval().
Node must be readable.
Definition at line 242 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::has_key_tag().
Node must be readable.
Definition at line 243 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::has_val_tag().
Node must be readable.
Definition at line 244 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::has_key_anchor().
Node must be readable.
Definition at line 245 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::has_val_anchor().
Node must be readable.
Definition at line 246 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::has_anchor().
Node must be readable.
Definition at line 247 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_key_ref().
Node must be readable.
Definition at line 248 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_val_ref().
Node must be readable.
Definition at line 249 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_ref().
Node must be readable.
Definition at line 250 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::parent_is_seq().
Node must be readable.
Definition at line 251 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::parent_is_map().
Node must be readable.
Definition at line 252 of file node.hpp.
References _C4RR.
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inlinenoexcept |
|
inline |
Forward to Tree::type_has_any().
Node must be readable.
Definition at line 268 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::type_has_all().
Node must be readable.
Definition at line 269 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::type_has_none().
Node must be readable.
Definition at line 270 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_container_styled().
Node must be readable.
Definition at line 272 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_block().
Node must be readable.
Definition at line 273 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_flow_sl().
Node must be readable.
Definition at line 274 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_flow_ml().
Node must be readable.
Definition at line 275 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_flow().
Node must be readable.
Definition at line 276 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_key_styled().
Node must be readable.
Definition at line 278 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_val_styled().
Node must be readable.
Definition at line 279 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_key_literal().
Node must be readable.
Definition at line 280 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_val_literal().
Node must be readable.
Definition at line 281 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_key_folded().
Node must be readable.
Definition at line 282 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_val_folded().
Node must be readable.
Definition at line 283 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_key_squo().
Node must be readable.
Definition at line 284 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_val_squo().
Node must be readable.
Definition at line 285 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_key_dquo().
Node must be readable.
Definition at line 286 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_val_dquo().
Node must be readable.
Definition at line 287 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_key_plain().
Node must be readable.
Definition at line 288 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_val_plain().
Node must be readable.
Definition at line 289 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_key_quoted().
Node must be readable.
Definition at line 290 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_val_quoted().
Node must be readable.
Definition at line 291 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_quoted().
Node must be readable.
Definition at line 292 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_root().
Node must be readable.
Definition at line 303 of file node.hpp.
References _C4RR.
Referenced by sample::sample_docs().
|
inline |
Forward to Tree::has_parent() Node must be readable.
Definition at line 304 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::is_ancestor() Node must be readable.
Definition at line 305 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::has_child().
Node must be readable.
Definition at line 307 of file node.hpp.
References _C4RR.
Referenced by sample::sample_quick_overview().
|
inline |
Forward to Tree::has_child().
Node must be readable.
Definition at line 308 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::has_child().
Node must be readable.
Definition at line 309 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::has_child().
Node must be readable.
Definition at line 310 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::has_sibling().
Node must be readable.
Definition at line 312 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::has_sibling().
Node must be readable.
Definition at line 313 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::has_sibling().
Node must be readable.
Definition at line 314 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::has_sibling().
Node must be readable.
Definition at line 315 of file node.hpp.
References _C4RR.
|
inline |
|
inline |
|
inline |
Forward to Tree::doc().
Node must be readable. succeeds even when the node may have invalid or seed id
|
inline |
Forward to Tree::parent().
Node must be readable.
Definition at line 333 of file node.hpp.
References _C4RR.
Referenced by c4::yml::NodeRef::remove_child(), and sample::sample_quick_overview().
|
inline |
Forward to Tree::parent().
Node must be readable.
Definition at line 334 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::first_child().
Node must be readable.
Definition at line 337 of file node.hpp.
References _C4RR.
Referenced by sample::sample_quick_overview().
|
inline |
Forward to Tree::first_child().
Node must be readable.
Definition at line 338 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::last_child().
Node must be readable.
Definition at line 341 of file node.hpp.
References _C4RR.
Referenced by sample::sample_quick_overview().
|
inline |
Forward to Tree::last_child().
Node must be readable.
Definition at line 342 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::child().
Node must be readable.
Definition at line 345 of file node.hpp.
References _C4RR.
Referenced by sample::sample_docs().
|
inline |
Forward to Tree::child().
Node must be readable.
Definition at line 346 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::first_child().
Node must be readable.
Definition at line 349 of file node.hpp.
References _C4RR.
Referenced by c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::get_if().
|
inline |
Forward to Tree::first_child().
Node must be readable.
Definition at line 350 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::prev_sibling().
Node must be readable.
Definition at line 353 of file node.hpp.
References _C4RR.
Referenced by sample::sample_quick_overview().
|
inline |
Forward to Tree::prev_sibling().
Node must be readable.
Definition at line 354 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::next_sibling().
Node must be readable.
Definition at line 357 of file node.hpp.
References _C4RR.
Referenced by sample::sample_quick_overview().
|
inline |
Forward to Tree::next_sibling().
Node must be readable.
Definition at line 358 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::first_sibling().
Node must be readable.
Definition at line 361 of file node.hpp.
References _C4RR.
Referenced by sample::sample_quick_overview().
|
inline |
Forward to Tree::first_sibling().
Node must be readable.
Definition at line 362 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::last_sibling().
Node must be readable.
Definition at line 365 of file node.hpp.
References _C4RR.
Referenced by sample::sample_quick_overview().
|
inline |
Forward to Tree::last_sibling().
Node must be readable.
Definition at line 366 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::sibling().
Node must be readable.
Definition at line 369 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::sibling().
Node must be readable.
Definition at line 370 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::find_sibling().
Node must be readable.
Definition at line 373 of file node.hpp.
References _C4RR.
|
inline |
Forward to Tree::find_sibling().
Node must be readable.
Definition at line 374 of file node.hpp.
References _C4RR.
|
inline |
O(num_children).
Forward to Tree::num_children().
Definition at line 376 of file node.hpp.
References _C4RR.
Referenced by c4::yml::read(), sample::read(), sample::sample_docs(), sample::sample_parse_reuse_tree(), sample::sample_quick_overview(), and sample::sample_tags().
|
inline |
O(num_children).
Forward to Tree::num_siblings().
Definition at line 377 of file node.hpp.
References _C4RR.
Referenced by sample::sample_quick_overview().
|
inline |
O(num_siblings).
Forward to Tree::num_other_siblings().
Definition at line 378 of file node.hpp.
References _C4RR.
|
inline |
O(num_children).
Forward to Tree::child_pos().
Definition at line 379 of file node.hpp.
References _C4RR.
|
inline |
O(num_siblings).
Forward to Tree::sibling_pos().
Definition at line 380 of file node.hpp.
References _C4RR.
|
inline |
|
inline |
O(log(num_nodes)).
Forward to Tree::depth_asc(). Node must be readable.
Definition at line 383 of file node.hpp.
References _C4RR.
|
inline |
Find child by key; complexity is O(num_children).
Returns the requested node, or an object in seed state if no such child is found (see NodeRef for an explanation of what is seed state). When the object is in seed state, using it to read from the tree is UB. The seed node can be used to write to the tree provided that its create() method is called prior to writing, which happens in most modifying methods in NodeRef. It is the caller's responsibility to verify that the returned node is readable before subsequently using it to read from the tree.
Definition at line 412 of file node.hpp.
References _C4RR, c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::key(), and c4::yml::NONE.
|
inline |
Find child by position; complexity is O(pos).
Returns the requested node, or an object in seed state if no such child is found (see NodeRef for an explanation of what is seed state). When the object is in seed state, using it to read from the tree is UB. The seed node can be used to write to the tree provided that its create() method is called prior to writing, which happens in most modifying methods in NodeRef. It is the caller's responsibility to verify that the returned node is readable before subsequently using it to read from the tree.
Definition at line 438 of file node.hpp.
References _C4RR, and c4::yml::NONE.
|
inline |
Find a child by key; complexity is O(num_children).
Behaves similar to the non-const overload, but further asserts that the returned node is readable (because it can never be in a seed state). The assertion is performed only if RYML_USE_ASSERT is set to true. As with the non-const overload, it is UB to use the return value if it is not valid.
Definition at line 454 of file node.hpp.
References _C4RR, c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::key(), and c4::yml::NONE.
|
inline |
Find a child by position; complexity is O(pos).
Behaves similar to the non-const overload, but further asserts that the returned node is readable (because it can never be in a seed state). This assertion is performed only if RYML_USE_ASSERT is set to true. As with the non-const overload, it is UB to use the return value if it is not valid.
Definition at line 471 of file node.hpp.
References _C4RR, and c4::yml::NONE.
|
inline |
Find child by key; complexity is O(num_children).
Returns the requested node, or an object in seed state if no such child is found (see NodeRef for an explanation of what is seed state). When the object is in seed state, using it to read from the tree is UB. The seed node can be subsequently used to write to the tree provided that its create() method is called prior to writing, which happens inside most mutating methods in NodeRef. It is the caller's responsibility to verify that the returned node is readable before subsequently using it to read from the tree.
Definition at line 519 of file node.hpp.
References c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::key(), and c4::yml::NONE.
|
inline |
Find child by position; complexity is O(pos).
Returns the requested node, or an object in seed state if no such child is found (see NodeRef for an explanation of what is seed state). When the object is in seed state, using it to read from the tree is UB. The seed node can be used to write to the tree provided that its create() method is called prior to writing, which happens in most modifying methods in NodeRef. It is the caller's responsibility to verify that the returned node is readable before subsequently using it to read from the tree.
Definition at line 555 of file node.hpp.
References c4::yml::NONE.
|
inline |
Get a child by name, with error checking; complexity is O(num_children).
Behaves as operator[](csubstr) const, but always raises an error (even when RYML_USE_ASSERT is set to false) when the returned node does not exist, or when this node is not readable, or when it is not a map. This behaviour is similar to std::vector::at(), but the error consists in calling the error callback instead of directly raising an exception.
Definition at line 576 of file node.hpp.
References c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::key(), and c4::yml::NONE.
|
inline |
Get a child by position, with error checking; complexity is O(pos).
Behaves as operator[](id_type) const, but always raises an error (even when RYML_USE_ASSERT is set to false) when the returned node does not exist, or when this node is not readable, or when it is not a container. This behaviour is similar to std::vector::at(), but the error consists in calling the error callback instead of directly raising an exception.
Definition at line 596 of file node.hpp.
References c4::yml::NONE.
|
inline |
deserialize the node's val to the given variable, forwarding to the user-overrideable read() function.
Definition at line 619 of file node.hpp.
References _C4RR, and c4::yml::read().
|
inline |
deserialize the node's key to the given variable, forwarding to the user-overrideable read() function; use key() to disambiguate; for example: node >> ryml::key(var)
Definition at line 631 of file node.hpp.
References _C4RR, c4::yml::Key< K >::k, and c4::yml::readkey().
|
inline |
look for a child by name, if it exists assign to var.
return true if the child existed.
Definition at line 642 of file node.hpp.
References _C4RR, and c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::find_child().
|
inline |
look for a child by name, if it exists assign to var, otherwise default to fallback.
return true if the child existed.
Definition at line 656 of file node.hpp.
References _C4RR, and c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::find_child().
|
inline |
deserialize the node's key as base64.
lightweight wrapper over deserialize_key()
Definition at line 676 of file node.hpp.
References c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::deserialize_key(), and c4::yml::Key< fmt::base64_wrapper >::wrapper.
|
inline |
deserialize the node's val as base64.
lightweight wrapper over deserialize_val()
Definition at line 683 of file node.hpp.
References c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::deserialize_val().
|
inline |
decode the base64-encoded key and assign the decoded blob to the given buffer/
Definition at line 692 of file node.hpp.
References _C4RR, c4::from_chars(), and c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::key().
Referenced by c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::operator>>().
|
inline |
decode the base64-encoded key and assign the decoded blob to the given buffer/
Definition at line 700 of file node.hpp.
References _C4RR, c4::from_chars(), and c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::val().
Referenced by c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::operator>>().
|
inline |
get an iterator to the first child
Definition at line 732 of file node.hpp.
References _C4RR.
Referenced by c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::cchildren(), and c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::children().
|
inline |
get an iterator to the first child
Definition at line 734 of file node.hpp.
References _C4RR.
|
inline |
|
inline |
get an iterator to after the last child
Definition at line 740 of file node.hpp.
References _C4RR, and c4::yml::NONE.
Referenced by c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::cchildren(), c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::children(), and c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::siblings().
|
inline |
get an iterator to after the last child
Definition at line 742 of file node.hpp.
References _C4RR, and c4::yml::NONE.
|
inline |
|
inline |
get an iterable view over children
Definition at line 748 of file node.hpp.
References _C4RR, c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::begin(), and c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::end().
Referenced by sample::read(), sample::sample_docs(), sample::sample_float_precision(), sample::sample_iterate_trees(), sample::sample_quick_overview(), and sample::sample_tags().
|
inline |
get an iterable view over children
Definition at line 750 of file node.hpp.
References _C4RR, c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::begin(), and c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::end().
|
inline |
get an iterable view over children
Definition at line 752 of file node.hpp.
References _C4RR, c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::begin(), and c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::end().
|
inline |
get an iterable view over all siblings (including the calling node)
Definition at line 756 of file node.hpp.
References _C4RR, c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::end(), c4::yml::NodeData::m_parent, and c4::yml::NONE.
Referenced by c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::csiblings().
|
inline |
get an iterable view over all siblings (including the calling node)
Definition at line 766 of file node.hpp.
References _C4RR, c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::end(), c4::yml::NodeData::m_parent, and c4::yml::NONE.
|
inline |
get an iterable view over all siblings (including the calling node)
Definition at line 776 of file node.hpp.
References c4::yml::detail::RoNodeMethods< Impl, ConstImpl >::siblings().
|
inline |
|
inline |
|
inline |
|
inline |