From Jason Turner

[range.lazy.split]

Diff to HTML by rtfpessoa

tmp/tmp8uv_z478/{from.md → to.md} RENAMED
@@ -203,12 +203,13 @@ constexpr outer-iterator(Parent& parent, iterator_t<Base> current)
203
  ``` cpp
204
  constexpr outer-iterator(outer-iterator<!Const> i)
205
  requires Const && convertible_to<iterator_t<V>, iterator_t<Base>>;
206
  ```
207
 
208
- *Effects:* Initializes *parent\_* with `i.`*`parent_`* and *current\_*
209
- with `std::move(i.`*`current_`*`)`.
 
210
 
211
  ``` cpp
212
  constexpr value_type operator*() const;
213
  ```
214
 
@@ -283,14 +284,13 @@ namespace std::ranges {
283
  struct lazy_split_view<V, Pattern>::outer-iterator<Const>::value_type
284
  : view_interface<value_type> {
285
  private:
286
  outer-iterator i_ = outer-iterator(); // exposition only
287
 
288
- public:
289
- value_type() = default;
290
- constexpr explicit value_type(outer-iterator i);
291
 
 
292
  constexpr inner-iterator<Const> begin() const;
293
  constexpr default_sentinel_t end() const noexcept;
294
  };
295
  }
296
  ```
@@ -328,11 +328,11 @@ namespace std::ranges {
328
  using Base = maybe-const<Const, V>; // exposition only
329
  outer-iterator<Const> i_ = outer-iterator<Const>(); // exposition only
330
  bool incremented_ = false; // exposition only
331
 
332
  public:
333
- using iterator_concept = typename outer-iterator<Const>::iterator_concept;
334
 
335
  using iterator_category = see belownc; // present only if Base
336
  // models forward_range
337
  using value_type = range_value_t<Base>;
338
  using difference_type = range_difference_t<Base>;
 
203
  ``` cpp
204
  constexpr outer-iterator(outer-iterator<!Const> i)
205
  requires Const && convertible_to<iterator_t<V>, iterator_t<Base>>;
206
  ```
207
 
208
+ *Effects:* Initializes *parent\_* with `i.`*`parent_`*, *current\_* with
209
+ `std::move(i.`*`current_`*`)`, and *trailing_empty\_* with
210
+ `i.`*`trailing_empty_`*.
211
 
212
  ``` cpp
213
  constexpr value_type operator*() const;
214
  ```
215
 
 
284
  struct lazy_split_view<V, Pattern>::outer-iterator<Const>::value_type
285
  : view_interface<value_type> {
286
  private:
287
  outer-iterator i_ = outer-iterator(); // exposition only
288
 
289
+ constexpr explicit value_type(outer-iterator i); // exposition only
 
 
290
 
291
+ public:
292
  constexpr inner-iterator<Const> begin() const;
293
  constexpr default_sentinel_t end() const noexcept;
294
  };
295
  }
296
  ```
 
328
  using Base = maybe-const<Const, V>; // exposition only
329
  outer-iterator<Const> i_ = outer-iterator<Const>(); // exposition only
330
  bool incremented_ = false; // exposition only
331
 
332
  public:
333
+ using iterator_concept = outer-iterator<Const>::iterator_concept;
334
 
335
  using iterator_category = see belownc; // present only if Base
336
  // models forward_range
337
  using value_type = range_value_t<Base>;
338
  using difference_type = range_difference_t<Base>;