Horizon
Public Types | Public Member Functions | Friends | List of all members
ranges::move_iterator< I > Struct Template Reference

Public Types

using iterator_type = I
 
using difference_type = iter_difference_t< I >
 
using value_type = iter_value_t< I >
 
using iterator_category = std::input_iterator_tag
 
using reference = iter_rvalue_reference_t< I >
 

Public Member Functions

 move_iterator (I i)
 
 template (typename O)(requires convertible_to< O
 
move_iterator (move_iterator< O > const &i)
 
 template (typename O)(requires convertible_to< O
 
I move_iteratoroperator= (move_iterator< O > const &i)
 
base () const
 
auto CPP_auto_fun (operator*)()(const)(return iter_move(current_)) move_iterator &operator++()
 
CPP_member auto operator++ (int) -> CPP_ret(void)(requires(!forward_iterator< I >))
 
CPP_member auto operator++ (int) -> CPP_ret(move_iterator)(requires forward_iterator< I >)
 
CPP_member auto operator-- () -> CPP_ret(move_iterator &)(requires forward_iterator< I >)
 
CPP_member auto operator-- (int) -> CPP_ret(move_iterator)(requires bidirectional_iterator< I >)
 
CPP_member auto operator+ (difference_type n) const -> CPP_ret(move_iterator)(requires random_access_iterator< I >)
 
CPP_member auto operator+= (difference_type n) -> CPP_ret(move_iterator &)(requires random_access_iterator< I >)
 
CPP_member auto operator- (difference_type n) const -> CPP_ret(move_iterator)(requires random_access_iterator< I >)
 
CPP_member auto operator-= (difference_type n) -> CPP_ret(move_iterator &)(requires random_access_iterator< I >)
 
CPP_member auto operator[] (difference_type n) const -> CPP_ret(reference)(requires random_access_iterator< I >)
 

Friends

template<typename I2 >
auto operator== (move_iterator const &x, move_iterator< I2 > const &y) -> CPP_broken_friend_ret(bool)(requires equality_comparable_with< I, I2 >)
 
template<typename I2 >
auto operator!= (move_iterator const &x, move_iterator< I2 > const &y) -> CPP_broken_friend_ret(bool)(requires equality_comparable_with< I, I2 >)
 
template<typename I2 >
auto operator< (move_iterator const &x, move_iterator< I2 > const &y) -> CPP_broken_friend_ret(bool)(requires totally_ordered_with< I, I2 >)
 
template<typename I2 >
auto operator<= (move_iterator const &x, move_iterator< I2 > const &y) -> CPP_broken_friend_ret(bool)(requires totally_ordered_with< I, I2 >)
 
template<typename I2 >
auto operator> (move_iterator const &x, move_iterator< I2 > const &y) -> CPP_broken_friend_ret(bool)(requires totally_ordered_with< I, I2 >)
 
template<typename I2 >
auto operator>= (move_iterator const &x, move_iterator< I2 > const &y) -> CPP_broken_friend_ret(bool)(requires totally_ordered_with< I, I2 >)
 
template<typename I2 >
auto operator- (move_iterator const &x, move_iterator< I2 > const &y) -> CPP_broken_friend_ret(iter_difference_t< I2 >)(requires sized_sentinel_for< I, I2 >)
 
CPP_broken_friend_member friend auto operator+ (iter_difference_t< I > n, move_iterator const &x) -> CPP_broken_friend_ret(move_iterator)(requires random_access_iterator< I >)
 

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