diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/pugixml.cpp | 9 | ||||
-rw-r--r-- | src/pugixml.hpp | 3 |
2 files changed, 12 insertions, 0 deletions
diff --git a/src/pugixml.cpp b/src/pugixml.cpp index 1142930..f53ce1d 100644 --- a/src/pugixml.cpp +++ b/src/pugixml.cpp @@ -4595,6 +4595,15 @@ namespace pugi return true; } + xml_node xml_document::document_element() const + { + for (xml_node_struct* i = _root->first_child; i; i = i->next_sibling) + if ((i->header & xml_memory_page_type_mask) + 1 == node_element) + return xml_node(i); + + return xml_node(); + } + #ifndef PUGIXML_NO_STL std::string PUGIXML_FUNCTION as_utf8(const wchar_t* str) { diff --git a/src/pugixml.hpp b/src/pugixml.hpp index 9b0d0d6..81fc6c3 100644 --- a/src/pugixml.hpp +++ b/src/pugixml.hpp @@ -764,6 +764,9 @@ namespace pugi // Save XML to file bool save_file(const char* path, const char_t* indent = PUGIXML_TEXT("\t"), unsigned int flags = format_default, xml_encoding encoding = encoding_auto) const; bool save_file(const wchar_t* path, const char_t* indent = PUGIXML_TEXT("\t"), unsigned int flags = format_default, xml_encoding encoding = encoding_auto) const; + + // Get document element + xml_node document_element() const; }; #ifndef PUGIXML_NO_XPATH |