X-Git-Url: http://www.project-moonshot.org/gitweb/?a=blobdiff_plain;f=xmltooling%2Futil%2FXMLObjectChildrenList.h;h=f897df0344b92b0b65e3cdeecd234e31c2bb3ba2;hb=cfe28ccd9dc92b05ec6981fa8b031b5150f3b323;hp=07d6cb69cae34d2839f2872f28f38c311372d59a;hpb=cb0a6a9f248cf4d551654cdd991cbf6908c07c7e;p=shibboleth%2Fxmltooling.git diff --git a/xmltooling/util/XMLObjectChildrenList.h b/xmltooling/util/XMLObjectChildrenList.h index 07d6cb6..f897df0 100644 --- a/xmltooling/util/XMLObjectChildrenList.h +++ b/xmltooling/util/XMLObjectChildrenList.h @@ -91,13 +91,13 @@ namespace xmltooling { template friend class XMLObjectChildrenList; template friend class XMLObjectPairList; public: - typedef typename _Ty::iterator::iterator_category iterator_category; - typedef typename _Ty::iterator::value_type value_type; - typedef typename _Ty::iterator::reference reference; - typedef typename _Ty::iterator::pointer pointer; - typedef typename _Ty::const_iterator::reference const_reference; - typedef typename _Ty::const_iterator::pointer const_pointer; - typedef typename _Ty::iterator::difference_type difference_type; + typedef typename std::iterator_traits::iterator_category iterator_category; + typedef typename std::iterator_traits::value_type value_type; + typedef typename std::iterator_traits::difference_type difference_type; + typedef typename std::iterator_traits::pointer pointer; + typedef typename std::iterator_traits::reference reference; + typedef typename _Ty::const_reference const_reference; + typedef typename _Ty::const_pointer const_pointer; XMLObjectChildrenIterator() { } @@ -111,7 +111,7 @@ namespace xmltooling { } const_reference operator->() const { - return *(m_iter.operator->()); + return *m_iter; } XMLObjectChildrenIterator& operator++() { @@ -181,6 +181,10 @@ namespace xmltooling { // test for iterator inequality return (!(m_iter == _Right.m_iter)); } + + bool operator<(const XMLObjectChildrenIterator &_Right) const { + return (m_iter < _Right.m_iter); + } /// @endcond };