diff options
| author | arseny.kapoulkine <arseny.kapoulkine@99668b35-9821-0410-8761-19e4c4f06640> | 2010-10-31 07:33:01 +0000 | 
|---|---|---|
| committer | arseny.kapoulkine <arseny.kapoulkine@99668b35-9821-0410-8761-19e4c4f06640> | 2010-10-31 07:33:01 +0000 | 
| commit | 4920e4fec93b801410b85c894c292a8e982661ba (patch) | |
| tree | 4b9d91d29875dc2ab8f09b214372a804f9c04acb /src | |
| parent | a73424aeffa5bbdf36c610dae96cd28dc81f4e66 (diff) | |
Added xml_document::reset() function with document parameter
git-svn-id: http://pugixml.googlecode.com/svn/trunk@786 99668b35-9821-0410-8761-19e4c4f06640
Diffstat (limited to 'src')
| -rw-r--r-- | src/pugixml.cpp | 8 | ||||
| -rw-r--r-- | src/pugixml.hpp | 3 | 
2 files changed, 11 insertions, 0 deletions
diff --git a/src/pugixml.cpp b/src/pugixml.cpp index 6850589..ff5aaa9 100644 --- a/src/pugixml.cpp +++ b/src/pugixml.cpp @@ -4505,6 +4505,14 @@ namespace pugi  		create();  	} +    void xml_document::reset(const xml_document& proto) +    { +        reset(); + +        for (xml_node cur = proto.first_child(); cur; cur = cur.next_sibling()) +            append_copy(cur); +    } +  	void xml_document::create()  	{  		// initialize sentinel page diff --git a/src/pugixml.hpp b/src/pugixml.hpp index ce4abe2..bb08064 100644 --- a/src/pugixml.hpp +++ b/src/pugixml.hpp @@ -740,6 +740,9 @@ namespace pugi          // Removes all nodes, leaving the empty document  		void reset(); +        // Removes all nodes, then copies the entire contents of the specified document +		void reset(const xml_document& proto); +  	#ifndef PUGIXML_NO_STL  		// Load document from stream.  		xml_parse_result load(std::basic_istream<char, std::char_traits<char> >& stream, unsigned int options = parse_default, xml_encoding encoding = encoding_auto);  | 
