mirror of
https://github.com/boostorg/iterator.git
synced 2026-07-05 08:00:59 +02:00
e3577e7687
By using Boost.Iterator we rely on the separate traversal category instead of the standard iterator category to advance iterators efficiently. For instance, this allows to advance transform iterators over a random access sequence in constant time, despite that they are formally input iterators. Also, std::reverse_iterator formally requires at least bidirectional iterator as the underlying iterator type. Transform iterators from the example above don't qualify, so potentially std::reverse_iterator could fail to compile.