asge::config::toml::_internal::Table
#include <TOML_Parser.hpp>Inherits from std::enable_shared_from_this< Table >.
Inheritance
classDiagram
class N1["asge::config::toml::_internal::Table"]
class N2["std::enable_shared_from_this"]
N2 <|-- N1
click N1 href "classasge_1_1config_1_1toml_1_1__internal_1_1Table.html"
Collaboration
classDiagram
class N1["asge::config::toml::_internal::Table"]
class N2["std::enable_shared_from_this"]
N2 <|-- N1
click N1 href "classasge_1_1config_1_1toml_1_1__internal_1_1Table.html"
Public Types
Private Attributes
Private Member Functions
Resolves a dotted path to the TOMLEntry of an already-existing key, recursing into subtables exactly like Get<T>/GetTable do.
Shared by Set/SetTypedArray so the path-walking logic (and its error codes) lives in exactly one place.
Public Member Functions
Table(std::string const &inName, TableType inType)Table(TableType inType)Table(Table const &)=deleteTable(Table &&)=default~Table()=defaultBoolResult AddKvPair(std::string const &inKey, TOMLEntry inEntry) noexceptvoid AddSubTable(pointer inChild) noexceptvoid SetParent(std::weak_ptr< Table > inParent) noexceptstd::string const & GetName() const noexcepttemplate<typename T> VectorResult< T > GetTypedArray(std::string const &inPath) consttemplate<typename T> BoolResult Set(std::string const &inPath, T inValue) noexceptOverwrites the value of an already-existing key, preserving its original TOMLTypeInfo (string subtype, numeric kind, ...).
Does not create missing keys or tables.
template<typename T> BoolResult SetTypedArray(std::string const &inPath, std::vector< T > const &inValues) noexceptOverwrites an already-existing array-valued key with new elements, reusing the array's existing per-element TOMLTypeInfo (or a sensible default if the existing array was empty).
template<typename T> BoolResult SetOrCreate(std::string const &inKey, T inValue) noexceptLike Set(), but creates the key with a default TOMLTypeInfo if it doesn't exist yet, instead of failing.
Only vivifies the leaf key, not missing intermediate tables (a dotted inKey into a missing subtable still errors) — pair with FindOrCreateTable for that, as TOMLBuilder does.
template<typename T> BoolResult SetOrCreateTypedArray(std::string const &inKey, std::vector< T > const &inValues) noexceptLike SetTypedArray(), but creates the key if it doesn't exist yet.
Seeds an empty array entry with the right per-element shape and delegates the actual fill (nested-array recursion included) to SetTypedArray, so that logic lives in one place.
Friends
friend operator<<