Skip to content

Commit adaccc0

Browse files
committed
Fix deprecated inheritance from std::iterator
1 parent 416eec9 commit adaccc0

1 file changed

Lines changed: 6 additions & 7 deletions

File tree

Algorithm/include/Algorithm/PageParser.h

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -197,17 +197,16 @@ class PageParser
197197
}
198198

199199
template <typename T>
200-
using IteratorBase = std::iterator<std::forward_iterator_tag, T>;
201-
202-
template <typename T>
203-
class Iterator : public IteratorBase<T>
200+
class Iterator
204201
{
205202
public:
206203
using ParentType = PageParser;
207204
using SelfType = Iterator;
208-
using value_type = typename IteratorBase<T>::value_type;
209-
using reference = typename IteratorBase<T>::reference;
210-
using pointer = typename IteratorBase<T>::pointer;
205+
using iterator_category = std::forward_iterator_tag;
206+
using value_type = T;
207+
using reference = T&;
208+
using pointer = T*;
209+
using difference_type = std::ptrdiff_t;
211210
using ElementType = typename std::remove_const<value_type>::type;
212211

213212
Iterator() = delete;

0 commit comments

Comments
 (0)