From Jason Turner

[unique.ptr.special]

Diff to HTML by rtfpessoa

tmp/tmp292ppfxe/{from.md → to.md} RENAMED
@@ -15,11 +15,11 @@ template<class T1, class D1, class T2, class D2>
15
 
16
  *Returns:* `x.get() == y.get()`.
17
 
18
  ``` cpp
19
  template<class T1, class D1, class T2, class D2>
20
- bool operator<(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);
21
  ```
22
 
23
  Let `CT` denote
24
 
25
  ``` cpp
@@ -38,34 +38,34 @@ ordering [[alg.sorting]] on the pointer values.
38
 
39
  *Returns:* `less<CT>()(x.get(), y.get())`.
40
 
41
  ``` cpp
42
  template<class T1, class D1, class T2, class D2>
43
- bool operator>(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);
44
  ```
45
 
46
  *Returns:* `y < x`.
47
 
48
  ``` cpp
49
  template<class T1, class D1, class T2, class D2>
50
- bool operator<=(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);
51
  ```
52
 
53
  *Returns:* `!(y < x)`.
54
 
55
  ``` cpp
56
  template<class T1, class D1, class T2, class D2>
57
- bool operator>=(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);
58
  ```
59
 
60
  *Returns:* `!(x < y)`.
61
 
62
  ``` cpp
63
  template<class T1, class D1, class T2, class D2>
64
  requires three_way_comparable_with<typename unique_ptr<T1, D1>::pointer,
65
  typename unique_ptr<T2, D2>::pointer>
66
- compare_three_way_result_t<typename unique_ptr<T1, D1>::pointer,
67
  typename unique_ptr<T2, D2>::pointer>
68
  operator<=>(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);
69
  ```
70
 
71
  *Returns:* `compare_three_way()(x.get(), y.get())`.
 
15
 
16
  *Returns:* `x.get() == y.get()`.
17
 
18
  ``` cpp
19
  template<class T1, class D1, class T2, class D2>
20
+ constexpr bool operator<(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);
21
  ```
22
 
23
  Let `CT` denote
24
 
25
  ``` cpp
 
38
 
39
  *Returns:* `less<CT>()(x.get(), y.get())`.
40
 
41
  ``` cpp
42
  template<class T1, class D1, class T2, class D2>
43
+ constexpr bool operator>(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);
44
  ```
45
 
46
  *Returns:* `y < x`.
47
 
48
  ``` cpp
49
  template<class T1, class D1, class T2, class D2>
50
+ constexpr bool operator<=(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);
51
  ```
52
 
53
  *Returns:* `!(y < x)`.
54
 
55
  ``` cpp
56
  template<class T1, class D1, class T2, class D2>
57
+ constexpr bool operator>=(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);
58
  ```
59
 
60
  *Returns:* `!(x < y)`.
61
 
62
  ``` cpp
63
  template<class T1, class D1, class T2, class D2>
64
  requires three_way_comparable_with<typename unique_ptr<T1, D1>::pointer,
65
  typename unique_ptr<T2, D2>::pointer>
66
+ constexpr compare_three_way_result_t<typename unique_ptr<T1, D1>::pointer,
67
  typename unique_ptr<T2, D2>::pointer>
68
  operator<=>(const unique_ptr<T1, D1>& x, const unique_ptr<T2, D2>& y);
69
  ```
70
 
71
  *Returns:* `compare_three_way()(x.get(), y.get())`.