From Jason Turner

[stable.sort]

Diff to HTML by rtfpessoa

Files changed (1) hide show
  1. tmp/tmp__07psem/{from.md → to.md} +14 -4
tmp/tmp__07psem/{from.md → to.md} RENAMED
@@ -1,30 +1,40 @@
1
  #### `stable_sort` <a id="stable.sort">[[stable.sort]]</a>
2
 
3
  ``` cpp
4
  template<class RandomAccessIterator>
5
- void stable_sort(RandomAccessIterator first, RandomAccessIterator last);
6
  template<class ExecutionPolicy, class RandomAccessIterator>
7
  void stable_sort(ExecutionPolicy&& exec,
8
  RandomAccessIterator first, RandomAccessIterator last);
9
 
10
  template<class RandomAccessIterator, class Compare>
11
- void stable_sort(RandomAccessIterator first, RandomAccessIterator last,
12
  Compare comp);
13
  template<class ExecutionPolicy, class RandomAccessIterator, class Compare>
14
  void stable_sort(ExecutionPolicy&& exec,
15
  RandomAccessIterator first, RandomAccessIterator last,
16
  Compare comp);
17
 
18
  template<random_access_iterator I, sentinel_for<I> S, class Comp = ranges::less,
19
  class Proj = identity>
20
  requires sortable<I, Comp, Proj>
21
- I ranges::stable_sort(I first, S last, Comp comp = {}, Proj proj = {});
22
  template<random_access_range R, class Comp = ranges::less, class Proj = identity>
23
  requires sortable<iterator_t<R>, Comp, Proj>
24
- borrowed_iterator_t<R>
25
  ranges::stable_sort(R&& r, Comp comp = {}, Proj proj = {});
 
 
 
 
 
 
 
 
 
 
26
  ```
27
 
28
  Let `comp` be `less{}` and `proj` be `identity{}` for the overloads with
29
  no parameters by those names.
30
 
 
1
  #### `stable_sort` <a id="stable.sort">[[stable.sort]]</a>
2
 
3
  ``` cpp
4
  template<class RandomAccessIterator>
5
+ constexpr void stable_sort(RandomAccessIterator first, RandomAccessIterator last);
6
  template<class ExecutionPolicy, class RandomAccessIterator>
7
  void stable_sort(ExecutionPolicy&& exec,
8
  RandomAccessIterator first, RandomAccessIterator last);
9
 
10
  template<class RandomAccessIterator, class Compare>
11
+ constexpr void stable_sort(RandomAccessIterator first, RandomAccessIterator last,
12
  Compare comp);
13
  template<class ExecutionPolicy, class RandomAccessIterator, class Compare>
14
  void stable_sort(ExecutionPolicy&& exec,
15
  RandomAccessIterator first, RandomAccessIterator last,
16
  Compare comp);
17
 
18
  template<random_access_iterator I, sentinel_for<I> S, class Comp = ranges::less,
19
  class Proj = identity>
20
  requires sortable<I, Comp, Proj>
21
+ constexpr I ranges::stable_sort(I first, S last, Comp comp = {}, Proj proj = {});
22
  template<random_access_range R, class Comp = ranges::less, class Proj = identity>
23
  requires sortable<iterator_t<R>, Comp, Proj>
24
+ constexpr borrowed_iterator_t<R>
25
  ranges::stable_sort(R&& r, Comp comp = {}, Proj proj = {});
26
+
27
+ template<execution-policy Ep, random_access_iterator I, sized_sentinel_for<I> S,
28
+ class Comp = ranges::less, class Proj = identity>
29
+ requires sortable<I, Comp, Proj>
30
+ I ranges::stable_sort(Ep&& exec, I first, S last, Comp comp = {}, Proj proj = {});
31
+ template<execution-policy Ep, sized-random-access-range R, class Comp = ranges::less,
32
+ class Proj = identity>
33
+ requires sortable<iterator_t<R>, Comp, Proj>
34
+ borrowed_iterator_t<R>
35
+ ranges::stable_sort(Ep&& exec, R&& r, Comp comp = {}, Proj proj = {});
36
  ```
37
 
38
  Let `comp` be `less{}` and `proj` be `identity{}` for the overloads with
39
  no parameters by those names.
40