| 12345678910111213141516171819202122232425262728293031323334353637 |
- //
- // iterator_fwd.h
- // iterator
- //
- // Created by Sam Jaffe on 2/18/17.
- //
- #pragma once
- #include <cstdlib>
- #include <iterator>
- namespace iterator {
- struct sentinel_t;
- // Iterator types
- template <typename It> class end_aware_iterator;
- template <typename It, typename Predicate> class filter_iterator;
- template <typename OIt> class joining_iterator;
- template <typename It> class unkeyed_iterator;
- template <typename... Its> class zip_iterator;
- struct unbounded {};
- template <size_t N>
- requires(N > 0)
- struct bounded {};
- template <typename It, typename MaxDepth = unbounded> class recursive_iterator;
- template <typename It, size_t N>
- using recursive_iterator_n = recursive_iterator<It, bounded<N>>;
- template <typename CRTP> class facade;
- template <typename It, typename CRTP,
- typename = typename std::iterator_traits<It>::iterator_category>
- class proxy;
- }
|