From Jason Turner

[reverse.iter.cmp]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpcoow7qoz/{from.md → to.md} +86 -0
tmp/tmpcoow7qoz/{from.md → to.md} RENAMED
@@ -0,0 +1,86 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #### Comparisons <a id="reverse.iter.cmp">[[reverse.iter.cmp]]</a>
2
+
3
+ ``` cpp
4
+ template<class Iterator1, class Iterator2>
5
+ constexpr bool operator==(
6
+ const reverse_iterator<Iterator1>& x,
7
+ const reverse_iterator<Iterator2>& y);
8
+ ```
9
+
10
+ *Constraints:* `x.base() == y.base()` is well-formed and convertible to
11
+ `bool`.
12
+
13
+ *Returns:* `x.base() == y.base()`.
14
+
15
+ ``` cpp
16
+ template<class Iterator1, class Iterator2>
17
+ constexpr bool operator!=(
18
+ const reverse_iterator<Iterator1>& x,
19
+ const reverse_iterator<Iterator2>& y);
20
+ ```
21
+
22
+ *Constraints:* `x.base() != y.base()` is well-formed and convertible to
23
+ `bool`.
24
+
25
+ *Returns:* `x.base() != y.base()`.
26
+
27
+ ``` cpp
28
+ template<class Iterator1, class Iterator2>
29
+ constexpr bool operator<(
30
+ const reverse_iterator<Iterator1>& x,
31
+ const reverse_iterator<Iterator2>& y);
32
+ ```
33
+
34
+ *Constraints:* `x.base() > y.base()` is well-formed and convertible to
35
+ `bool`.
36
+
37
+ *Returns:* `x.base() > y.base()`.
38
+
39
+ ``` cpp
40
+ template<class Iterator1, class Iterator2>
41
+ constexpr bool operator>(
42
+ const reverse_iterator<Iterator1>& x,
43
+ const reverse_iterator<Iterator2>& y);
44
+ ```
45
+
46
+ *Constraints:* `x.base() < y.base()` is well-formed and convertible to
47
+ `bool`.
48
+
49
+ *Returns:* `x.base() < y.base()`.
50
+
51
+ ``` cpp
52
+ template<class Iterator1, class Iterator2>
53
+ constexpr bool operator<=(
54
+ const reverse_iterator<Iterator1>& x,
55
+ const reverse_iterator<Iterator2>& y);
56
+ ```
57
+
58
+ *Constraints:* `x.base() >= y.base()` is well-formed and convertible to
59
+ `bool`.
60
+
61
+ *Returns:* `x.base() >= y.base()`.
62
+
63
+ ``` cpp
64
+ template<class Iterator1, class Iterator2>
65
+ constexpr bool operator>=(
66
+ const reverse_iterator<Iterator1>& x,
67
+ const reverse_iterator<Iterator2>& y);
68
+ ```
69
+
70
+ *Constraints:* `x.base() <= y.base()` is well-formed and convertible to
71
+ `bool`.
72
+
73
+ *Returns:* `x.base() <= y.base()`.
74
+
75
+ ``` cpp
76
+ template<class Iterator1, three_way_comparable_with<Iterator1> Iterator2>
77
+ constexpr compare_three_way_result_t<Iterator1, Iterator2>
78
+ operator<=>(const reverse_iterator<Iterator1>& x,
79
+ const reverse_iterator<Iterator2>& y);
80
+ ```
81
+
82
+ *Returns:* `y.base() <=> x.base()`.
83
+
84
+ [*Note 1*: The argument order in the *Returns:* element is reversed
85
+ because this is a reverse iterator. — *end note*]
86
+