Class yaml_ref
Defined in File yaml.h
Class Documentation
-
class yaml_ref
Non-owning mutable reference into a yaml tree node. Returned by yaml::operator[]. Implicitly converts to yaml (deep copy) for reading; assignments write through to the referenced node.
Note
Invalidated if the parent yaml container reallocates (e.g. a new map key is inserted). Treat it as a temporary handle, not a persistent reference.
Note
[New in MRPT 3.x]
Public Types
-
using sequence_t = yaml::sequence_t
Public Functions
-
yaml_ref() = delete
-
inline bool isNullNode() const
-
inline bool isScalar() const
-
inline bool isMap() const
-
inline bool isSequence() const
-
inline std::string typeName() const
-
inline size_t size() const
-
inline bool empty() const
-
inline bool has(const std::string &key) const
-
inline void clear()
-
inline sequence_t &asSequence()
-
inline const sequence_t &asSequence() const
-
inline bool keyHasComment(const std::string &key) const
-
inline std::string keyComment(const std::string &key) const
-
inline size_t erase(const std::string &key)
-
inline bool erase(int index)
-
inline bool hasComment() const
-
inline bool hasComment(CommentPosition pos) const
-
inline const std::string &comment() const
-
inline const std::string &comment(CommentPosition pos) const
-
inline void comment(const std::string &c, CommentPosition pos = CommentPosition::RIGHT)
-
inline void printAsYAML(std::ostream &o, const YamlEmitOptions &eo = {}) const
-
inline void printAsYAML() const
-
inline const std::type_info &scalarType() const
-
template<typename = std::enable_if<!std::is_same_v<std::size_t, uint64_t> && !std::is_same_v<std::size_t, int64_t> && !std::is_same_v<std::size_t, uint32_t> && !std::is_same_v<std::size_t, int32_t>>>
inline yaml_ref &operator=(std::size_t v)
-
template<typename T>
inline yaml_ref &operator=(const ValueCommentPair<T> &vc) vcp (value-comment) wrapper
-
inline operator bool() const
-
inline operator double() const
-
inline operator float() const
-
inline operator int8_t() const
-
inline operator uint8_t() const
-
inline operator int16_t() const
-
inline operator uint16_t() const
-
inline operator int32_t() const
-
inline operator uint32_t() const
-
inline operator int64_t() const
-
inline operator uint64_t() const
-
inline operator std::string() const
-
inline void push_back(double v)
-
inline void push_back(const std::string &v)
-
inline void push_back(uint64_t v)
-
inline void push_back(bool v)
-
using sequence_t = yaml::sequence_t