From Jason Turner

[range.slide.sentinel]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmpmurfftjy/{from.md → to.md} +57 -0
tmp/tmpmurfftjy/{from.md → to.md} RENAMED
@@ -0,0 +1,57 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #### Class `slide_view::sentinel` <a id="range.slide.sentinel">[[range.slide.sentinel]]</a>
2
+
3
+ ``` cpp
4
+ namespace std::ranges {
5
+ template<forward_range V>
6
+ requires view<V>
7
+ class slide_view<V>::sentinel {
8
+ sentinel_t<V> end_ = sentinel_t<V>(); // exposition only
9
+ constexpr explicit sentinel(sentinel_t<V> end); // exposition only
10
+
11
+ public:
12
+ sentinel() = default;
13
+
14
+ friend constexpr bool operator==(const iterator<false>& x, const sentinel& y);
15
+
16
+ friend constexpr range_difference_t<V>
17
+ operator-(const iterator<false>& x, const sentinel& y)
18
+ requires sized_sentinel_for<sentinel_t<V>, iterator_t<V>>;
19
+
20
+ friend constexpr range_difference_t<V>
21
+ operator-(const sentinel& y, const iterator<false>& x)
22
+ requires sized_sentinel_for<sentinel_t<V>, iterator_t<V>>;
23
+ };
24
+ }
25
+ ```
26
+
27
+ [*Note 1*: *`sentinel`* is used only when `slide-caches-first<V>` is
28
+ `true`. — *end note*]
29
+
30
+ ``` cpp
31
+ constexpr explicit sentinel(sentinel_t<V> end);
32
+ ```
33
+
34
+ *Effects:* Initializes *end\_* with `end`.
35
+
36
+ ``` cpp
37
+ friend constexpr bool operator==(const iterator<false>& x, const sentinel& y);
38
+ ```
39
+
40
+ *Returns:* `x.`*`last_ele_`*` == y.`*`end_`*.
41
+
42
+ ``` cpp
43
+ friend constexpr range_difference_t<V>
44
+ operator-(const iterator<false>& x, const sentinel& y)
45
+ requires sized_sentinel_for<sentinel_t<V>, iterator_t<V>>;
46
+ ```
47
+
48
+ *Returns:* `x.`*`last_ele_`*` - y.`*`end_`*.
49
+
50
+ ``` cpp
51
+ friend constexpr range_difference_t<V>
52
+ operator-(const sentinel& y, const iterator<false>& x)
53
+ requires sized_sentinel_for<sentinel_t<V>, iterator_t<V>>;
54
+ ```
55
+
56
+ *Returns:* `y.`*`end_`*` - x.`*`last_ele_`*.
57
+