From Jason Turner

[common.iter.cust]

Diff to HTML by rtfpessoa

tmp/tmp72jros4k/{from.md → to.md} RENAMED
@@ -1,20 +1,20 @@
1
- #### Customization <a id="common.iter.cust">[[common.iter.cust]]</a>
2
 
3
  ``` cpp
4
- friend iter_rvalue_reference_t<I> iter_move(const common_iterator& i)
5
  noexcept(noexcept(ranges::iter_move(declval<const I&>())))
6
  requires input_iterator<I>;
7
  ```
8
 
9
- *Preconditions:* `holds_alternative<I>(v_)`.
10
 
11
  *Effects:* Equivalent to: `return ranges::iter_move(get<I>(i.v_));`
12
 
13
  ``` cpp
14
  template<indirectly_swappable<I> I2, class S2>
15
- friend void iter_swap(const common_iterator& x, const common_iterator<I2, S2>& y)
16
  noexcept(noexcept(ranges::iter_swap(declval<const I&>(), declval<const I2&>())));
17
  ```
18
 
19
  *Preconditions:* `holds_alternative<I>(x.v_)` and
20
  `holds_alternative<I2>(y.v_)` are each `true`.
 
1
+ #### Customizations <a id="common.iter.cust">[[common.iter.cust]]</a>
2
 
3
  ``` cpp
4
+ friend constexpr iter_rvalue_reference_t<I> iter_move(const common_iterator& i)
5
  noexcept(noexcept(ranges::iter_move(declval<const I&>())))
6
  requires input_iterator<I>;
7
  ```
8
 
9
+ *Preconditions:* `holds_alternative<I>(i.v_)` is `true`.
10
 
11
  *Effects:* Equivalent to: `return ranges::iter_move(get<I>(i.v_));`
12
 
13
  ``` cpp
14
  template<indirectly_swappable<I> I2, class S2>
15
+ friend constexpr void iter_swap(const common_iterator& x, const common_iterator<I2, S2>& y)
16
  noexcept(noexcept(ranges::iter_swap(declval<const I&>(), declval<const I2&>())));
17
  ```
18
 
19
  *Preconditions:* `holds_alternative<I>(x.v_)` and
20
  `holds_alternative<I2>(y.v_)` are each `true`.