From Jason Turner

[range.chunk.outer.value]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmprrfqybzi/{from.md → to.md} +52 -0
tmp/tmprrfqybzi/{from.md → to.md} RENAMED
@@ -0,0 +1,52 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #### Class `chunk_view::outer-iterator::value_type` <a id="range.chunk.outer.value">[[range.chunk.outer.value]]</a>
2
+
3
+ ``` cpp
4
+ namespace std::ranges {
5
+ template<view V>
6
+ requires input_range<V>
7
+ struct chunk_view<V>::outer-iterator::value_type : view_interface<value_type> {
8
+ private:
9
+ chunk_view* parent_; // exposition only
10
+
11
+ constexpr explicit value_type(chunk_view& parent); // exposition only
12
+
13
+ public:
14
+ constexpr inner-iterator begin() const noexcept;
15
+ constexpr default_sentinel_t end() const noexcept;
16
+
17
+ constexpr auto size() const
18
+ requires sized_sentinel_for<sentinel_t<V>, iterator_t<V>>;
19
+ };
20
+ }
21
+ ```
22
+
23
+ ``` cpp
24
+ constexpr explicit value_type(chunk_view& parent);
25
+ ```
26
+
27
+ *Effects:* Initializes *parent\_* with `addressof(parent)`.
28
+
29
+ ``` cpp
30
+ constexpr inner-iterator begin() const noexcept;
31
+ ```
32
+
33
+ *Returns:* *`inner-iterator`*`(*`*`parent_`*`)`.
34
+
35
+ ``` cpp
36
+ constexpr default_sentinel_t end() const noexcept;
37
+ ```
38
+
39
+ *Returns:* `default_sentinel`.
40
+
41
+ ``` cpp
42
+ constexpr auto size() const
43
+ requires sized_sentinel_for<sentinel_t<V>, iterator_t<V>>;
44
+ ```
45
+
46
+ *Effects:* Equivalent to:
47
+
48
+ ``` cpp
49
+ return to-unsigned-like(ranges::min(parent_->remainder_,
50
+ ranges::end(parent_->base_) - *parent_->current_));
51
+ ```
52
+