diff options
Diffstat (limited to 'src/xml/XmlParser.cpp')
-rw-r--r-- | src/xml/XmlParser.cpp | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/src/xml/XmlParser.cpp b/src/xml/XmlParser.cpp new file mode 100644 index 00000000..23407d11 --- /dev/null +++ b/src/xml/XmlParser.cpp @@ -0,0 +1,27 @@ +#include "cru/xml/XmlParser.hpp" + +namespace cru::xml { +XmlNode XmlParser::Parse() { + if (!root_node_) { + root_node_ = DoParse(); + } + return *root_node_; +} + +XmlNode XmlParser::DoParse() { + XmlNode root(XmlNode::Type::Element); + XmlNode* current = &root; + int current_position = 0; + + // TODO: Implement this. + while (current_position < xml_.size()) { + switch (xml_[current_position]) { + case '<': { + break; + } + } + } + + return root; +} +} // namespace cru::xml |