Horizon
Public Member Functions | Friends | List of all members
ranges::basic_iterator< Cur > Struct Template Reference
Inheritance diagram for ranges::basic_iterator< Cur >:

Public Member Functions

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

Friends

template<typename C = Cur>
constexpr friend auto iter_move (basic_iterator const &it) noexcept(noexcept(range_access::move(std::declval< C const & >()))) -> CPP_broken_friend_ret(decltype(range_access::move(std::declval< C const & >())))(requires same_as< C, Cur > &&detail::input_cursor< Cur >)
 

The documentation for this struct was generated from the following file: