From Jason Turner

[range.view]

Diff to HTML by rtfpessoa

tmp/tmp967_qzs2/{from.md → to.md} RENAMED
@@ -8,11 +8,11 @@ constructing range adaptor pipelines [[range.adaptors]].
8
  template<class T>
9
  concept view =
10
  range<T> && movable<T> && enable_view<T>;
11
  ```
12
 
13
- `T` models `view` only if:
14
 
15
  - `T` has 𝑂(1) move construction; and
16
  - move assignment of an object of type `T` is no more complex than
17
  destruction followed by move construction; and
18
  - if N copies and/or moves are made from an object of type `T` that
@@ -56,10 +56,10 @@ For a type `T`, *`is-derived-from-view-interface`*`<T>` is `true` if and
56
  only if `T` has exactly one public base class `view_interface<U>` for
57
  some type `U` and `T` has no base classes of type `view_interface<V>`
58
  for any other type `V`.
59
 
60
  *Remarks:* Pursuant to [[namespace.std]], users may specialize
61
- `enable_view` to `true` for cv-unqualified program-defined types which
62
- model `view`, and `false` for types which do not. Such specializations
63
  shall be usable in constant expressions [[expr.const]] and have type
64
  `const bool`.
65
 
 
8
  template<class T>
9
  concept view =
10
  range<T> && movable<T> && enable_view<T>;
11
  ```
12
 
13
+ `T` models `view` only if
14
 
15
  - `T` has 𝑂(1) move construction; and
16
  - move assignment of an object of type `T` is no more complex than
17
  destruction followed by move construction; and
18
  - if N copies and/or moves are made from an object of type `T` that
 
56
  only if `T` has exactly one public base class `view_interface<U>` for
57
  some type `U` and `T` has no base classes of type `view_interface<V>`
58
  for any other type `V`.
59
 
60
  *Remarks:* Pursuant to [[namespace.std]], users may specialize
61
+ `enable_view` to `true` for cv-unqualified program-defined types that
62
+ model `view`, and `false` for types that do not. Such specializations
63
  shall be usable in constant expressions [[expr.const]] and have type
64
  `const bool`.
65