Remove uses of std::iterator (deprecated in C++17)

This commit is contained in:
Romain Deterre 2020-03-27 14:10:00 -04:00
parent b2f89386d8
commit 2d0fe496ae

View File

@ -52,10 +52,7 @@ struct node_iterator_type<const V> {
};
template <typename V>
class node_iterator_base
: public std::iterator<std::forward_iterator_tag, node_iterator_value<V>,
std::ptrdiff_t, node_iterator_value<V>*,
node_iterator_value<V>> {
class node_iterator_base {
private:
struct enabler {};
@ -68,9 +65,13 @@ class node_iterator_base
};
public:
using iterator_category = std::forward_iterator_tag;
using value_type = node_iterator_value<V>;
using difference_type = std::ptrdiff_t;
using pointer = node_iterator_value<V>*;
using reference = node_iterator_value<V>;
using SeqIter = typename node_iterator_type<V>::seq;
using MapIter = typename node_iterator_type<V>::map;
using value_type = node_iterator_value<V>;
node_iterator_base()
: m_type(iterator_type::NoneType), m_seqIt(), m_mapIt(), m_mapEnd() {}