summaryrefslogtreecommitdiff
path: root/zenXml/zenxml/dom.h
diff options
context:
space:
mode:
authorDaniel Wilhelm <shieldwed@outlook.com>2018-06-30 12:43:08 +0200
committerDaniel Wilhelm <shieldwed@outlook.com>2018-06-30 12:43:08 +0200
commita98326eb2954ac1e79f5eac28dbeab3ec15e047f (patch)
treebb16257a1894b488e365851273735ec13a9442ef /zenXml/zenxml/dom.h
parent10.0 (diff)
downloadFreeFileSync-a98326eb2954ac1e79f5eac28dbeab3ec15e047f.tar.gz
FreeFileSync-a98326eb2954ac1e79f5eac28dbeab3ec15e047f.tar.bz2
FreeFileSync-a98326eb2954ac1e79f5eac28dbeab3ec15e047f.zip
10.1
Diffstat (limited to 'zenXml/zenxml/dom.h')
-rwxr-xr-xzenXml/zenxml/dom.h15
1 files changed, 10 insertions, 5 deletions
diff --git a/zenXml/zenxml/dom.h b/zenXml/zenxml/dom.h
index 15700ee2..566af330 100755
--- a/zenXml/zenxml/dom.h
+++ b/zenXml/zenxml/dom.h
@@ -10,7 +10,6 @@
#include <string>
#include <list>
#include <map>
-#include <zen/fixed_list.h>
#include "cvrt_text.h" //"readText/writeText"
@@ -144,9 +143,15 @@ public:
template < class IterTy, //underlying iterator type
class T, //target object type
class AccessPolicy > //access policy: see AccessPtrMap
- class PtrIter : public std::iterator<std::input_iterator_tag, T>, private AccessPolicy //get rid of shared_ptr indirection
+ class PtrIter : private AccessPolicy //get rid of shared_ptr indirection
{
public:
+ using iterator_category = std::input_iterator_tag;
+ using value_type = T;
+ using difference_type = std::ptrdiff_t;
+ using pointer = T*;
+ using reference = T&;
+
PtrIter(IterTy it) : it_(it) {}
PtrIter(const PtrIter& other) : it_(other.it_) {}
PtrIter& operator++() { ++it_; return *this; }
@@ -191,8 +196,8 @@ public:
T& objectRef(const IterTy& it) const { return *it; }
};
- using ChildIter = PtrIter<FixedList<XmlElement>::iterator, XmlElement, AccessListElement>;
- using ChildIterConst = PtrIter<FixedList<XmlElement>::const_iterator, const XmlElement, AccessListElement>;
+ using ChildIter = PtrIter<std::list<XmlElement>::iterator, XmlElement, AccessListElement>;
+ using ChildIterConst = PtrIter<std::list<XmlElement>::const_iterator, const XmlElement, AccessListElement>;
///Access all child elements sequentially via STL iterators.
/**
@@ -257,7 +262,7 @@ private:
std::list<Attribute> attributes_; //attributes in order of creation
std::map<std::string, std::list<Attribute>::iterator> attributesSorted_; //alternate view: sorted by attribute name
- FixedList<XmlElement> childElements_; //child elements in order of creation
+ std::list<XmlElement> childElements_; //child elements in order of creation
std::multimap<std::string, XmlElement*> childElementsSorted_; //alternate view: sorted by element name
XmlElement* parent_ = nullptr;
};
bgstack15