diff --git a/source/elements/oneDPL/source/parallel_api/parallel_range_api.rst b/source/elements/oneDPL/source/parallel_api/parallel_range_api.rst index d5a353e5d..b3258f5ce 100644 --- a/source/elements/oneDPL/source/parallel_api/parallel_range_api.rst +++ b/source/elements/oneDPL/source/parallel_api/parallel_range_api.rst @@ -288,7 +288,7 @@ Sequence Search and Comparison std::ranges::borrowed_iterator_t> mismatch (ExecutionPolicy&& pol, R1&& r1, R2&& r2, Pred pred = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); - + // find_end template + + namespace oneapi::dpl::ranges { + + // includes + template + std::indirect_strict_weak_order< std::projected, Proj1>, + std::projected, Proj2> > + Comp = std::ranges::less> + requires oneapi::dpl::is_execution_policy_v> && + std::ranges::sized_range && std::ranges::sized_range + bool includes (ExecutionPolicy&& pol, R1&& r1, R2&& r2, Comp comp = {}, + Proj1 proj1 = {}, Proj2 proj2 = {}); + + // set_union + template + requires oneapi::dpl::is_execution_policy_v> && + std::ranges::sized_range && std::ranges::sized_range && + std::ranges::sized_range && + std::mergeable, std::ranges::iterator_t, + std::ranges::iterator_t, Comp, Proj1, Proj2> + std::ranges::set_union_result, + std::ranges::borrowed_iterator_t, + std::ranges::borrowed_iterator_t> + set_union (ExecutionPolicy&& pol, R1&& r1, R2&& r2, OutR&& result, Comp comp = {}, + Proj1 proj1 = {}, Proj2 proj2 = {}); + + // set_intersection + template + requires oneapi::dpl::is_execution_policy_v> && + std::ranges::sized_range && std::ranges::sized_range && + std::ranges::sized_range && + std::mergeable, std::ranges::iterator_t, + std::ranges::iterator_t, Comp, Proj1, Proj2> + std::ranges::set_intersection_result, + std::ranges::borrowed_iterator_t, + std::ranges::borrowed_iterator_t> + set_intersection (ExecutionPolicy&& pol, R1&& r1, R2&& r2, OutR&& result, Comp comp = {}, + Proj1 proj1 = {}, Proj2 proj2 = {}); + + // set_difference + template + requires oneapi::dpl::is_execution_policy_v> && + std::ranges::sized_range && std::ranges::sized_range && + std::ranges::sized_range && + std::mergeable, std::ranges::iterator_t, + std::ranges::iterator_t, Comp, Proj1, Proj2> + std::ranges::set_difference_result, + std::ranges::borrowed_iterator_t, + std::ranges::borrowed_iterator_t> + set_difference (ExecutionPolicy&& pol, R1&& r1, R2&& r2, OutR&& result, Comp comp = {}, + Proj1 proj1 = {}, Proj2 proj2 = {}); + + // set_symmetric_difference + template + requires oneapi::dpl::is_execution_policy_v> && + std::ranges::sized_range && std::ranges::sized_range && + std::ranges::sized_range && + std::mergeable, std::ranges::iterator_t, + std::ranges::iterator_t, Comp, Proj1, Proj2> + std::ranges::set_symmetric_difference_result, + std::ranges::borrowed_iterator_t, + std::ranges::borrowed_iterator_t> + set_symmetric_difference (ExecutionPolicy&& pol, R1&& r1, R2&& r2, OutR&& result, + Comp comp = {}, Proj1 proj1 = {}, Proj2 proj2 = {}); + } + Copying Mutating Operations +++++++++++++++++++++++++++