72 lines
2.4 KiB
Markdown
72 lines
2.4 KiB
Markdown
[move.iter.cons]
|
||
|
||
# 24 Iterators library [[iterators]](./#iterators)
|
||
|
||
## 24.5 Iterator adaptors [[predef.iterators]](predef.iterators#move.iter.cons)
|
||
|
||
### 24.5.4 Move iterators and sentinels [[move.iterators]](move.iterators#move.iter.cons)
|
||
|
||
#### 24.5.4.4 Construction and assignment [move.iter.cons]
|
||
|
||
[ð](#lib:move_iterator,constructor)
|
||
|
||
`constexpr move_iterator();
|
||
`
|
||
|
||
[1](#1)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iterators.tex#L4895)
|
||
|
||
*Effects*: Value-initializes current[.](#1.sentence-1)
|
||
|
||
[ð](#lib:move_iterator,constructor_)
|
||
|
||
`constexpr explicit move_iterator(Iterator i);
|
||
`
|
||
|
||
[2](#2)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iterators.tex#L4907)
|
||
|
||
*Effects*: Initializes current with std::move(i)[.](#2.sentence-1)
|
||
|
||
[ð](#lib:move_iterator,constructor__)
|
||
|
||
`template<class U> constexpr move_iterator(const move_iterator<U>& u);
|
||
`
|
||
|
||
[3](#3)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iterators.tex#L4919)
|
||
|
||
*Constraints*: is_same_v<U, Iterator> is false andconst U& models [convertible_to](concept.convertible#concept:convertible_to "18.4.4 Concept convertible_to [concept.convertible]")<Iterator>[.](#3.sentence-1)
|
||
|
||
[4](#4)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iterators.tex#L4924)
|
||
|
||
*Effects*: Initializes current with u.current[.](#4.sentence-1)
|
||
|
||
[ð](#lib:operator=,move_iterator)
|
||
|
||
`template<class U> constexpr move_iterator& operator=(const move_iterator<U>& u);
|
||
`
|
||
|
||
[5](#5)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iterators.tex#L4935)
|
||
|
||
*Constraints*: is_same_v<U, Iterator> is false,const U& models [convertible_to](concept.convertible#concept:convertible_to "18.4.4 Concept convertible_to [concept.convertible]")<Iterator>, and[assignable_from](concept.assignable#concept:assignable_from "18.4.8 Concept assignable_from [concept.assignable]")<Iterator&, const U&> is modeled[.](#5.sentence-1)
|
||
|
||
[6](#6)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iterators.tex#L4941)
|
||
|
||
*Effects*: Assigns u.current tocurrent[.](#6.sentence-1)
|
||
|
||
[7](#7)
|
||
|
||
[#](http://github.com/Eelis/draft/tree/9adde4bc1c62ec234483e63ea3b70a59724c745a/source/iterators.tex#L4946)
|
||
|
||
*Returns*: *this[.](#7.sentence-1)
|