aboutsummaryrefslogtreecommitdiff
path: root/include/cru/xml/XmlNode.hpp
diff options
context:
space:
mode:
authorcrupest <crupest@outlook.com>2022-01-12 22:36:09 +0800
committercrupest <crupest@outlook.com>2022-01-12 22:36:09 +0800
commitc409caa8873e25699fc10ae435e8d123685f28f3 (patch)
tree16a0c0696f0e6d4c6856db0b7864652e2779b2b8 /include/cru/xml/XmlNode.hpp
parent7a42d92c10a4bc686244668dd0e3f903f30f2fae (diff)
downloadcru-c409caa8873e25699fc10ae435e8d123685f28f3.tar.gz
cru-c409caa8873e25699fc10ae435e8d123685f28f3.tar.bz2
cru-c409caa8873e25699fc10ae435e8d123685f28f3.zip
...
Diffstat (limited to 'include/cru/xml/XmlNode.hpp')
-rw-r--r--include/cru/xml/XmlNode.hpp12
1 files changed, 7 insertions, 5 deletions
diff --git a/include/cru/xml/XmlNode.hpp b/include/cru/xml/XmlNode.hpp
index cf2543c9..38f09d14 100644
--- a/include/cru/xml/XmlNode.hpp
+++ b/include/cru/xml/XmlNode.hpp
@@ -1,5 +1,7 @@
#pragma once
+#include "Base.hpp"
+
#include "cru/common/String.hpp"
#include <algorithm>
@@ -10,7 +12,7 @@ namespace cru::xml {
class XmlElementNode;
class XmlTextNode;
-class XmlNode {
+class CRU_XML_API XmlNode {
friend XmlElementNode;
public:
@@ -40,7 +42,7 @@ class XmlNode {
XmlElementNode* parent_ = nullptr;
};
-class XmlTextNode : public XmlNode {
+class CRU_XML_API XmlTextNode : public XmlNode {
public:
XmlTextNode() : XmlNode(Type::Text) {}
explicit XmlTextNode(String text)
@@ -61,7 +63,7 @@ class XmlTextNode : public XmlNode {
String text_;
};
-class XmlElementNode : public XmlNode {
+class CRU_XML_API XmlElementNode : public XmlNode {
public:
XmlElementNode() : XmlNode(Type::Element) {}
explicit XmlElementNode(String tag,
@@ -86,9 +88,9 @@ class XmlElementNode : public XmlNode {
}
const std::vector<XmlNode*> GetChildren() const { return children_; }
- int GetChildCount() const { return children_.size(); }
+ Index GetChildCount() const { return children_.size(); }
String GetAttribute(const String& key) const { return attributes_.at(key); }
- XmlNode* GetChildAt(int index) const { return children_[index]; }
+ XmlNode* GetChildAt(Index index) const { return children_[index]; }
void AddAttribute(String key, String value);
void AddChild(XmlNode* child);