|
Cur &&constexpr constructible_from< mixin_t, OtherCur > | basic_iterator (basic_iterator< OtherCur > that) |
|
| basic_iterator (Cur &&cur) |
|
| basic_iterator (Cur const &cur) |
|
constexpr auto | operator* () const noexcept(noexcept(const_reference_t{std::declval< Cur const & >()})) -> const_reference_t requires ` detail::has_cursor_next< Cur > &&detail::is_writable_cursor_v< Cur const > ` |
|
constexpr auto | operator* () const noexcept(noexcept(range_access::read(std::declval< Cur const & >()))) -> const_reference_t requires ` detail::readable_cursor< Cur > &&(!detail::is_writable_cursor_v< Cur >) ` |
|
constexpr auto | operator* () noexcept -> basic_iterator &requires `(!detail::has_cursor_next< Cur >) ` |
|
constexpr auto | operator* () noexcept(noexcept(iter_reference_t{std::declval< Cur & >()})) -> iter_reference_t requires ` detail::has_cursor_next< Cur > &&detail::is_writable_cursor_v< Cur > ` |
|
constexpr auto | operator++ () -> basic_iterator &requires ` detail::has_cursor_next< Cur > ` |
|
constexpr auto | operator++ () noexcept -> basic_iterator &requires `(!detail::has_cursor_next< Cur >) ` |
|
constexpr auto | operator++ (int) |
|
constexpr auto | operator+= (difference_type n) -> basic_iterator &requires ` detail::random_access_cursor< Cur > ` |
|
constexpr auto | operator-- () -> basic_iterator &requires ` detail::bidirectional_cursor< Cur > ` |
|
constexpr auto | operator-- (int) -> basic_iterator requires ` detail::bidirectional_cursor< Cur > ` |
|
constexpr auto | operator-= (difference_type n) -> basic_iterator &requires ` detail::random_access_cursor< Cur > ` |
|
template<typename C = Cur> |
requires constexpr detail::has_cursor_arrow< C > detail::cursor_arrow_t< C > | operator-> () const noexcept(noexcept(range_access::arrow(std::declval< C const & >()))) |
|
constexpr Cur basic_iterator & | operator= (basic_iterator< OtherCur > that) |
|
constexpr auto | operator[] (difference_type n) const -> const_reference_t requires ` detail::random_access_cursor< Cur > ` |
|
template<typename C = Cur> |
| requires (!detail::has_cursor_arrow< C >) &&detail |
|
template<typename OtherCur > |
| requires (!same_as< OtherCur, Cur >) &&convertible_to< OtherCur |
|
template<typename OtherCur > |
| requires (!same_as< OtherCur, Cur >) &&convertible_to< OtherCur |
|