|
6714 | 6714 | \indexlibraryglobal{stable_sort}% |
6715 | 6715 | \begin{itemdecl} |
6716 | 6716 | template<class RandomAccessIterator> |
6717 | | - void stable_sort(RandomAccessIterator first, RandomAccessIterator last); |
| 6717 | + constexpr void stable_sort(RandomAccessIterator first, RandomAccessIterator last); |
6718 | 6718 | template<class ExecutionPolicy, class RandomAccessIterator> |
6719 | 6719 | void stable_sort(ExecutionPolicy&& exec, |
6720 | 6720 | RandomAccessIterator first, RandomAccessIterator last); |
6721 | 6721 |
|
6722 | 6722 | template<class RandomAccessIterator, class Compare> |
6723 | | - void stable_sort(RandomAccessIterator first, RandomAccessIterator last, |
6724 | | - Compare comp); |
| 6723 | + constexpr void stable_sort(RandomAccessIterator first, RandomAccessIterator last, |
| 6724 | + Compare comp); |
6725 | 6725 | template<class ExecutionPolicy, class RandomAccessIterator, class Compare> |
6726 | 6726 | void stable_sort(ExecutionPolicy&& exec, |
6727 | 6727 | RandomAccessIterator first, RandomAccessIterator last, |
|
6730 | 6730 | template<@\libconcept{random_access_iterator}@ I, @\libconcept{sentinel_for}@<I> S, class Comp = ranges::less, |
6731 | 6731 | class Proj = identity> |
6732 | 6732 | requires @\libconcept{sortable}@<I, Comp, Proj> |
6733 | | - I ranges::stable_sort(I first, S last, Comp comp = {}, Proj proj = {}); |
| 6733 | + constexpr I ranges::stable_sort(I first, S last, Comp comp = {}, Proj proj = {}); |
6734 | 6734 | template<@\libconcept{random_access_range}@ R, class Comp = ranges::less, class Proj = identity> |
6735 | 6735 | requires @\libconcept{sortable}@<iterator_t<R>, Comp, Proj> |
6736 | | - borrowed_iterator_t<R> |
| 6736 | + constexpr borrowed_iterator_t<R> |
6737 | 6737 | ranges::stable_sort(R&& r, Comp comp = {}, Proj proj = {}); |
6738 | 6738 | \end{itemdecl} |
6739 | 6739 |
|
|
7512 | 7512 | \begin{itemdecl} |
7513 | 7513 | template<class BidirectionalIterator, class Predicate> |
7514 | 7514 | BidirectionalIterator |
7515 | | - stable_partition(BidirectionalIterator first, BidirectionalIterator last, Predicate pred); |
| 7515 | + constexpr stable_partition(BidirectionalIterator first, BidirectionalIterator last, |
| 7516 | + Predicate pred); |
7516 | 7517 | template<class ExecutionPolicy, class BidirectionalIterator, class Predicate> |
7517 | 7518 | BidirectionalIterator |
7518 | 7519 | stable_partition(ExecutionPolicy&& exec, |
|
7521 | 7522 | template<@\libconcept{bidirectional_iterator}@ I, @\libconcept{sentinel_for}@<I> S, class Proj = identity, |
7522 | 7523 | @\libconcept{indirect_unary_predicate}@<projected<I, Proj>> Pred> |
7523 | 7524 | requires @\libconcept{permutable}@<I> |
7524 | | - subrange<I> ranges::stable_partition(I first, S last, Pred pred, Proj proj = {}); |
| 7525 | + constexpr subrange<I> ranges::stable_partition(I first, S last, Pred pred, Proj proj = {}); |
7525 | 7526 | template<@\libconcept{bidirectional_range}@ R, class Proj = identity, |
7526 | 7527 | @\libconcept{indirect_unary_predicate}@<projected<iterator_t<R>, Proj>> Pred> |
7527 | 7528 | requires @\libconcept{permutable}@<iterator_t<R>> |
7528 | | - borrowed_subrange_t<R> ranges::stable_partition(R&& r, Pred pred, Proj proj = {}); |
| 7529 | + constexpr borrowed_subrange_t<R> ranges::stable_partition(R&& r, Pred pred, Proj proj = {}); |
7529 | 7530 | \end{itemdecl} |
7530 | 7531 |
|
7531 | 7532 | \begin{itemdescr} |
|
7792 | 7793 | \indexlibraryglobal{inplace_merge}% |
7793 | 7794 | \begin{itemdecl} |
7794 | 7795 | template<class BidirectionalIterator> |
7795 | | - void inplace_merge(BidirectionalIterator first, |
7796 | | - BidirectionalIterator middle, |
7797 | | - BidirectionalIterator last); |
| 7796 | + constexpr void inplace_merge(BidirectionalIterator first, |
| 7797 | + BidirectionalIterator middle, |
| 7798 | + BidirectionalIterator last); |
7798 | 7799 | template<class ExecutionPolicy, class BidirectionalIterator> |
7799 | 7800 | void inplace_merge(ExecutionPolicy&& exec, |
7800 | 7801 | BidirectionalIterator first, |
7801 | 7802 | BidirectionalIterator middle, |
7802 | 7803 | BidirectionalIterator last); |
7803 | 7804 |
|
7804 | 7805 | template<class BidirectionalIterator, class Compare> |
7805 | | - void inplace_merge(BidirectionalIterator first, |
7806 | | - BidirectionalIterator middle, |
7807 | | - BidirectionalIterator last, Compare comp); |
| 7806 | + constexpr void inplace_merge(BidirectionalIterator first, |
| 7807 | + BidirectionalIterator middle, |
| 7808 | + BidirectionalIterator last, Compare comp); |
7808 | 7809 | template<class ExecutionPolicy, class BidirectionalIterator, class Compare> |
7809 | 7810 | void inplace_merge(ExecutionPolicy&& exec, |
7810 | 7811 | BidirectionalIterator first, |
|
7814 | 7815 | template<@\libconcept{bidirectional_iterator}@ I, @\libconcept{sentinel_for}@<I> S, class Comp = ranges::less, |
7815 | 7816 | class Proj = identity> |
7816 | 7817 | requires @\libconcept{sortable}@<I, Comp, Proj> |
7817 | | - I ranges::inplace_merge(I first, I middle, S last, Comp comp = {}, Proj proj = {}); |
| 7818 | + constexpr I ranges::inplace_merge(I first, I middle, S last, Comp comp = {}, Proj proj = {}); |
7818 | 7819 | \end{itemdecl} |
7819 | 7820 |
|
7820 | 7821 | \begin{itemdescr} |
|
7865 | 7866 | \begin{itemdecl} |
7866 | 7867 | template<@\libconcept{bidirectional_range}@ R, class Comp = ranges::less, class Proj = identity> |
7867 | 7868 | requires @\libconcept{sortable}@<iterator_t<R>, Comp, Proj> |
7868 | | - borrowed_iterator_t<R> |
| 7869 | + constexpr borrowed_iterator_t<R> |
7869 | 7870 | ranges::inplace_merge(R&& r, iterator_t<R> middle, Comp comp = {}, Proj proj = {}); |
7870 | 7871 | \end{itemdecl} |
7871 | 7872 |
|
|
0 commit comments