constexpr move_iterator();
Effects: Value-initializes
current. constexpr explicit move_iterator(Iterator i);
Effects: Initializes
current with
std::move(i). template<class U> constexpr move_iterator(const move_iterator<U>& u);
Constraints:
is_same_v<U, Iterator> is
false and
const U& models
convertible_to<Iterator>. Effects: Initializes
current with
u.current. template<class U> constexpr move_iterator& operator=(const move_iterator<U>& u);
Effects: Assigns
u.current to
current.