[move.iter.cons] (original) (raw)
23 Iterators library [iterators]
23.5 Iterator adaptors [predef.iterators]
23.5.3 Move iterators and sentinels [move.iterators]
23.5.3.4 Construction and assignment [move.iter.cons]
constexpr move_iterator();
Effects: Constructs a move_iterator, value-initializingcurrent.
Iterator operations applied to the resulting iterator have defined behavior if and only if the corresponding operations are defined on a value-initialized iterator of type Iterator.
constexpr explicit move_iterator(Iterator i);
Effects: Constructs a move_iterator, initializingcurrent with std::move(i).
template<class U> constexpr move_iterator(const move_iterator<U>& u);
Mandates: U is convertible to Iterator.
Effects: Constructs a move_iterator, initializingcurrent with u.base().
template<class U> constexpr move_iterator& operator=(const move_iterator<U>& u);
Mandates: U is convertible to Iterator.
Effects: Assigns u.base() tocurrent.