aboutsummaryrefslogtreecommitdiff
path: root/include/cru/common/PropertyTree.hpp
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2022-02-08 16:53:51 +0800
committercrupest <crupest@outlook.com>2022-02-08 16:53:51 +0800
commit74bb9cd27242b9320f99ff4d2b50c3051576cc14 (patch)
tree744bac5799c593d1d6f81e7b09581bea626f2cde /include/cru/common/PropertyTree.hpp
parentb90c398de829d1ba5329651d75bae82f5e4085fe (diff)
downloadcru-74bb9cd27242b9320f99ff4d2b50c3051576cc14.tar.gz
cru-74bb9cd27242b9320f99ff4d2b50c3051576cc14.tar.bz2
cru-74bb9cd27242b9320f99ff4d2b50c3051576cc14.zip
...
Diffstat (limited to 'include/cru/common/PropertyTree.hpp')
-rw-r--r--include/cru/common/PropertyTree.hpp63
1 files changed, 0 insertions, 63 deletions
diff --git a/include/cru/common/PropertyTree.hpp b/include/cru/common/PropertyTree.hpp
deleted file mode 100644
index 613bcc47..00000000
--- a/include/cru/common/PropertyTree.hpp
+++ /dev/null
@@ -1,63 +0,0 @@
-#pragma once
-
-#include "Base.hpp"
-#include "String.hpp"
-
-#include <unordered_map>
-
-namespace cru {
-class PropertyTree;
-
-class CRU_BASE_API PropertySubTreeRef {
- public:
- static String CombineKey(StringView left, StringView right);
-
- explicit PropertySubTreeRef(PropertyTree* tree, String path = {});
-
- CRU_DEFAULT_COPY(PropertySubTreeRef);
- CRU_DEFAULT_MOVE(PropertySubTreeRef);
-
- CRU_DEFAULT_DESTRUCTOR(PropertySubTreeRef);
-
- public:
- PropertyTree* GetTree() const { return tree_; }
-
- String GetPath() const { return path_; }
- void SetPath(String path) { path_ = std::move(path); }
-
- PropertySubTreeRef GetParent() const;
- PropertySubTreeRef GetChild(const String& key) const;
-
- String GetValue(const String& key) const;
- void SetValue(const String& key, String value);
- void DeleteValue(const String& key);
-
- private:
- PropertyTree* tree_;
- String path_;
-};
-
-class CRU_BASE_API PropertyTree {
- public:
- static String CombineKey(StringView left, StringView right);
-
- PropertyTree() = default;
- explicit PropertyTree(std::unordered_map<String, String> values);
-
- CRU_DELETE_COPY(PropertyTree);
- CRU_DELETE_MOVE(PropertyTree);
-
- CRU_DEFAULT_DESTRUCTOR(PropertyTree);
-
- public:
- String GetValue(const String& key) const;
- void SetValue(const String& key, String value);
- void DeleteValue(const String& key);
-
- PropertySubTreeRef GetSubTreeRef(const String& path);
-
- private:
- std::unordered_map<String, String> values_;
-};
-
-} // namespace cru