Go to the documentation of this file.
32 #include "../detail/ContainerVariant.h"
35 #include "../../../type/variant/any/AnyObject.h"
36 #include "../../../type/variant/container/Dict.h"
37 #include "../../../type/variant/container/Object.h"
42 typedef std::shared_ptr<Dict>
DictPtr;
74 std::map<std::string, VariantPtr>
getElements()
const;
89 std::vector<VariantPtr>
getChildren()
const override;
99 std::map<std::string, VariantPtr> childrenNavigators;
105 template <
typename... _Args>
109 return std::make_shared<aron::data::Dict>(args...);
type::VariantPtr recalculateType() const override
recalculate the type of a data variant. Please not tha the mapping ist NOT bijective,...
std::shared_ptr< Variant > VariantPtr
void removeElement(const std::string &key)
aron::data::DictPtr make_dict(_Args &&... args)
void addElementCopy(const std::string &key, const VariantPtr &=nullptr)
VariantPtr getElement(const std::string &) const
Dict & operator=(const Dict &)
virtual PointerType clone() const
void mergeAndReplace(const DictPtr &d)
static PointerType FromAronDictDTO(const data::dto::DictPtr &aron)
std::vector< std::string > getAllKeys() const
VariantPtr navigateAbsolute(const Path &path) const override
naviate absolute
std::shared_ptr< Variant > VariantPtr
bool operator==(const Dict &) const override
bool fullfillsType(const type::VariantPtr &) const override
checks, if the current data variant fullfills the given type
void addElement(const std::string &key, const VariantPtr &=nullptr)
bool hasElement(const std::string &) const
Dict(const Path &path=Path())
static data::dto::DictPtr ToAronDictDTO(const PointerType &navigator)
VariantPtr at(const std::string &) const
A convenience header to include all aron files (full include, not forward declared)
std::shared_ptr< Dict > DictPtr
VariantPtr operator[](const std::string &) const
std::map< std::string, VariantPtr > getElements() const
std::filesystem::path Path
void mergeAndReplaceCopy(const DictPtr &d)
void setElementCopy(const std::string &, const VariantPtr &=nullptr)
std::vector< VariantPtr > getChildren() const override
get the children of a data variant
size_t childrenSize() const override
get the children size of a data variant
std::string getAllKeysAsString() const
std::string getFullName() const override
get the full str representation of this variant
std::string getShortName() const override
get a short str representation of this variant
AronDataType::PointerType aron
void setElement(const std::string &, const VariantPtr &=nullptr)
data::dto::DictPtr toAronDictDTO() const