From Jason Turner

[iterator.iterators]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmp_kwbg3fg/{from.md → to.md} +17 -14
tmp/tmp_kwbg3fg/{from.md → to.md} RENAMED
@@ -1,18 +1,21 @@
1
- ### Iterator <a id="iterator.iterators">[[iterator.iterators]]</a>
2
 
3
- The `Iterator` requirements form the basis of the iterator concept
4
- taxonomy; every iterator satisfies the `Iterator` requirements. This set
5
- of requirements specifies operations for dereferencing and incrementing
6
- an iterator. Most algorithms will require additional operations to
7
- read ([[input.iterators]]) or write ([[output.iterators]]) values, or
8
- to provide a richer set of iterator movements ([[forward.iterators]],
9
- [[bidirectional.iterators]], [[random.access.iterators]]).
 
10
 
11
- A type `X` satisfies the `Iterator` requirements if:
12
 
13
- - `X` satisfies the `CopyConstructible`, `CopyAssignable`, and
14
- `Destructible` requirements ([[utility.arg.requirements]]) and
15
- lvalues of type `X` are swappable ([[swappable.requirements]]), and
16
- - the expressions in Table  [[tab:iterator.requirements]] are valid and
17
- have the indicated semantics.
 
 
18
 
 
1
+ #### *Cpp17Iterator* <a id="iterator.iterators">[[iterator.iterators]]</a>
2
 
3
+ The *Cpp17Iterator* requirements form the basis of the iterator
4
+ taxonomy; every iterator meets the *Cpp17Iterator* requirements. This
5
+ set of requirements specifies operations for dereferencing and
6
+ incrementing an iterator. Most algorithms will require additional
7
+ operations to read [[input.iterators]] or write [[output.iterators]]
8
+ values, or to provide a richer set of iterator movements (
9
+ [[forward.iterators]], [[bidirectional.iterators]],
10
+ [[random.access.iterators]]).
11
 
12
+ A type `X` meets the *Cpp17Iterator* requirements if:
13
 
14
+ - `X` meets the *Cpp17CopyConstructible*, *Cpp17CopyAssignable*, and
15
+ *Cpp17Destructible* requirements [[utility.arg.requirements]] and
16
+ lvalues of type `X` are swappable [[swappable.requirements]], and
17
+ - `iterator_traits<X>::difference_type` is a signed integer type or
18
+ `void`, and
19
+ - the expressions in [[iterator]] are valid and have the indicated
20
+ semantics.
21