|
|
template<typename I , requires = (RandomAccessIterator<I>())> |
| static void | advance (I &it, difference_type_t< I > n) |
| |
|
template<typename Rng > |
| static constexpr auto | begin (Rng &rng) noexcept(noexcept(decltype(ranges::begin(rng.base()))(ranges::begin(rng.base())))) -> decltype(ranges::begin(rng.base())) |
| |
|
template<typename I , requires = (SizedSentinel<I, I>())> |
| static difference_type_t< I > | distance_to (I const &it0, I const &it1) |
| |
|
template<typename I , typename S , requires = (Sentinel<S, I>())> |
| static constexpr bool | empty (I const &it, S const &end) |
| |
|
template<typename Rng > |
| static constexpr auto | end (Rng &rng) noexcept(noexcept(decltype(ranges::end(rng.base()))(ranges::end(rng.base())))) -> decltype(ranges::end(rng.base())) |
| |
|
template<typename I , requires = (EqualityComparable<I>())> |
| static bool | equal (I const &it0, I const &it1) |
| |
|
template<typename I , requires = (Iterator<I>())> |
| static void | next (I &it) |
| |
|
template<typename I , requires = (BidirectionalIterator<I>())> |
| static void | prev (I &it) |
| |
|
template<typename I , requires = (Iterator<I>())> |
| static reference_t< I > | read (I const &it, detail::adaptor_base_current_mem_fn={}) noexcept(noexcept(reference_t< I >(*it))) |
| |