Skip to content

Commit e51b7ca

Browse files
Move partial_sort to be next to stable_sort
1 parent 6a0da70 commit e51b7ca

File tree

1 file changed

+25
-24
lines changed

1 file changed

+25
-24
lines changed

source/elements/oneDPL/source/parallel_api/parallel_range_api.rst

Lines changed: 25 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -373,6 +373,31 @@ Sorting and Merge
373373
std::ranges::borrowed_iterator_t<R>
374374
stable_sort (ExecutionPolicy&& pol, R&& r, Comp comp = {}, Proj proj = {});
375375
376+
// partial_sort
377+
template <typename ExecutionPolicy, std::ranges::random_access_range R,
378+
typename Comp = std::ranges::less, typename Proj = std::identity>
379+
requires oneapi::dpl::is_execution_policy_v<std::remove_cvref_t<ExecutionPolicy>> &&
380+
std::ranges::sized_range<R> && std::sortable<std::ranges::iterator_t<R>, Comp, Proj>
381+
std::ranges::borrowed_iterator_t<R>
382+
partial_sort (ExecutionPolicy&& pol, R&& r, std::ranges::iterator_t<R> middle,
383+
Comp comp = {}, Proj proj = {});
384+
385+
// partial_sort_copy
386+
template <typename ExecutionPolicy, std::ranges::random_access_range R1,
387+
std::ranges::random_access_range R2, typename Comp = std::ranges::less,
388+
typename Proj1 = std::identity, typename Proj2 = std::identity>
389+
requires oneapi::dpl::is_execution_policy_v<std::remove_cvref_t<ExecutionPolicy>> &&
390+
std::ranges::sized_range<R1> && std::ranges::sized_range<R2> &&
391+
std::indirectly_copyable<std::ranges::iterator_t<R1>, std::ranges::iterator_t<R2>> &&
392+
std::sortable<std::ranges::iterator_t<R2>, Comp, Proj2> &&
393+
std::indirect_strict_weak_order<Comp,
394+
std::projected<std::ranges::iterator_t<R1>, Proj1>,
395+
std::projected<std::ranges::iterator_t<R2>, Proj2> >
396+
std::ranges::partial_sort_copy_result<std::ranges::borrowed_iterator_t<R1>,
397+
std::ranges::borrowed_iterator_t<R2>>
398+
partial_sort_copy (ExecutionPolicy&& pol, R1&& r1, R2&& r2, Comp comp = {},
399+
Proj1 proj1 = {}, Proj2 proj2 = {});
400+
376401
// is_sorted
377402
template <typename ExecutionPolicy, std::ranges::random_access_range R,
378403
typename Proj = std::identity,
@@ -408,30 +433,6 @@ Sorting and Merge
408433
merge (ExecutionPolicy&& pol, R1&& r1, R2&& r2, OutR&& result, Comp comp = {},
409434
Proj1 proj1 = {}, Proj2 proj2 = {});
410435
411-
// partial_sort
412-
template <typename ExecutionPolicy, std::ranges::random_access_range R,
413-
typename Comp = std::ranges::less, typename Proj = std::identity>
414-
requires oneapi::dpl::is_execution_policy_v<std::remove_cvref_t<ExecutionPolicy>> &&
415-
std::ranges::sized_range<R> && std::sortable<std::ranges::iterator_t<R>, Comp, Proj>
416-
std::ranges::borrowed_iterator_t<R>
417-
partial_sort (ExecutionPolicy&& pol, R&& r, std::ranges::iterator_t<R> middle,
418-
Comp comp = {}, Proj proj = {});
419-
420-
// partial_sort_copy
421-
template <typename ExecutionPolicy, std::ranges::random_access_range R1,
422-
std::ranges::random_access_range R2, typename Comp = std::ranges::less,
423-
typename Proj1 = std::identity, typename Proj2 = std::identity>
424-
requires oneapi::dpl::is_execution_policy_v<std::remove_cvref_t<ExecutionPolicy>> &&
425-
std::ranges::sized_range<R1> && std::ranges::sized_range<R2> &&
426-
std::indirectly_copyable<std::ranges::iterator_t<R1>, std::ranges::iterator_t<R2>> &&
427-
std::sortable<std::ranges::iterator_t<R2>, Comp, Proj2> &&
428-
std::indirect_strict_weak_order<Comp,
429-
std::projected<std::ranges::iterator_t<R1>, Proj1>,
430-
std::projected<std::ranges::iterator_t<R2>, Proj2> >
431-
std::ranges::partial_sort_copy_result<std::ranges::borrowed_iterator_t<R1>,
432-
std::ranges::borrowed_iterator_t<R2>>
433-
partial_sort_copy (ExecutionPolicy&& pol, R1&& r1, R2&& r2, Comp comp = {},
434-
Proj1 proj1 = {}, Proj2 proj2 = {});
435436
}
436437
437438
Set operations

0 commit comments

Comments
 (0)