[libcxx-commits] [libcxx] [libc++][pstl][NFC] Sort the forward declarations in backend_fwd.h (PR #233477)

Michael G. Kazakov via libcxx-commits libcxx-commits at lists.llvm.org
Tue Oct 20 01:36:16 PDT 2026


https://github.com/mikekazakov updated https://github.com/llvm/llvm-project/pull/233477

>From 028c1eb0f49ee7648cca18a054a95b62edd74af3 Mon Sep 17 00:00:00 2001
From: Michael Kazakov <mike.kazakov at gmail.com>
Date: Mon, 19 Oct 2026 17:06:20 +0100
Subject: [PATCH] Sort the forward declarations

---
 libcxx/include/__pstl/backend_fwd.h | 462 ++++++++++++++--------------
 1 file changed, 231 insertions(+), 231 deletions(-)

diff --git a/libcxx/include/__pstl/backend_fwd.h b/libcxx/include/__pstl/backend_fwd.h
index e45943954bed98..401a099ad65d6b 100644
--- a/libcxx/include/__pstl/backend_fwd.h
+++ b/libcxx/include/__pstl/backend_fwd.h
@@ -68,72 +68,83 @@ using __current_configuration _LIBCPP_NODEBUG =
 #  endif
 
 template <class _Backend, class _ExecutionPolicy>
-struct __find_if;
-// template <class _Policy, class _ForwardIterator, class _Predicate>
-// optional<_ForwardIterator>
-// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Predicate __pred) const noexcept;
-
-template <class _Backend, class _ExecutionPolicy>
-struct __find_if_not;
-// template <class _Policy, class _ForwardIterator, class _Predicate>
-// optional<_ForwardIterator>
-// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Predicate __pred) const noexcept;
+struct __adjacent_difference;
+// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _BinaryOperation>
+// optional<_ForwardIterator2>
+// operator()(_Policy&& __policy, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
+//                                _ForwardIterator2 __first2, _BinaryOperation &&__op) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __find;
-// template <class _Policy, class _ForwardIterator, class _Tp>
+struct __adjacent_find;
+// template <class _Policy, class _ForwardIterator, class _BinaryPredicate>
 // optional<_ForwardIterator>
-// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, const _Tp& __value) const noexcept;
+// operator()(_Policy&& __policy, _ForwardIterator __first, _ForwardIterator __last,
+//                                _BinaryPredicate __predicate) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __any_of;
+struct __all_of;
 // template <class _Policy, class _ForwardIterator, class _Predicate>
 // optional<bool>
 // operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Predicate __pred) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __all_of;
+struct __any_of;
 // template <class _Policy, class _ForwardIterator, class _Predicate>
 // optional<bool>
 // operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Predicate __pred) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __none_of;
-// template <class _Policy, class _ForwardIterator, class _Predicate>
-// optional<bool>
-// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Predicate __pred) const noexcept;
+struct __copy;
+// template <class _Policy, class _ForwardIterator, class _ForwardOutIterator>
+// optional<_ForwardOutIterator>
+// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last,
+//                       _ForwardOutIterator __out_it) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __is_partitioned;
-// template <class _Policy, class _ForwardIterator, class _Predicate>
-// optional<bool>
-// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Predicate __pred) const noexcept;
+struct __copy_n;
+// template <class _Policy, class _ForwardIterator, class _Size, class _ForwardOutIterator>
+// optional<_ForwardOutIterator>
+// operator()(_Policy&&, _ForwardIterator __first, _Size __n, _ForwardOutIterator __out_it) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __find_first_of;
-// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _Predicate>
-// optional<_ForwardIterator1>
-// operator()(_Policy&&, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
-//                       _ForwardIterator2 __first2, _ForwardIterator2 __last2, _Predicate __pred) const noexcept;
+struct __count;
+// template <class _Policy, class _ForwardIterator, class _Tp>
+// optional<__iter_diff_t<_ForwardIterator>>
+// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Tp const& __value) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __find_end;
-// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _Predicate>
-// optional<_ForwardIterator1>
-// operator()(_Policy&&, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
-//                       _ForwardIterator2 __first2, _ForwardIterator2 __last2, _Predicate __pred) const noexcept;
+struct __count_if;
+// template <class _Policy, class _ForwardIterator, class _Predicate>
+// optional<__iter_diff_t<_ForwardIterator>>
+// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Predicate __pred) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __for_each;
-// template <class _Policy, class _ForwardIterator, class _Function>
+struct __destroy;
+// template <class _Policy, class _ForwardIterator>
 // optional<__empty>
-// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Function __func) const noexcept;
+// operator()(_Policy&& __policy, _ForwardIterator __first, _ForwardIterator __last) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __for_each_n;
-// template <class _Policy, class _ForwardIterator, class _Size, class _Function>
+struct __destroy_n;
+// template <class _Policy, class _ForwardIterator, class _Size>
 // optional<_ForwardIterator>
-// operator()(_Policy&&, _ForwardIterator __first, _Size __size, _Function __func) const noexcept;
+// operator()(_Policy&& __policy, _ForwardIterator __first, _Size __n) const noexcept;
+
+template <class _Backend, class _ExecutionPolicy>
+struct __equal;
+// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _Predicate>
+// optional<bool>
+// operator()(_Policy&&, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
+//                       _ForwardIterator2 __first2, _ForwardIterator2 __last2,
+//                       _Predicate __pred) const noexcept;
+
+template <class _Backend, class _ExecutionPolicy>
+struct __equal_3leg;
+// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _Predicate>
+// optional<bool>
+// operator()(_Policy&&, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
+//                       _ForwardIterator2 __first2,
+//                       _Predicate __pred) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
 struct __fill;
@@ -148,32 +159,48 @@ struct __fill_n;
 // operator()(_Policy&&, _ForwardIterator __first, _Size __n, _Tp const& __value) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __search;
-// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _BinaryPredicate>
+struct __find;
+// template <class _Policy, class _ForwardIterator, class _Tp>
+// optional<_ForwardIterator>
+// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, const _Tp& __value) const noexcept;
+
+template <class _Backend, class _ExecutionPolicy>
+struct __find_end;
+// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _Predicate>
 // optional<_ForwardIterator1>
 // operator()(_Policy&&, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
-//                       _ForwardIterator2 __first2, _ForwardIterator2 __last2, _BinaryPredicate __pred) const noexcept;
+//                       _ForwardIterator2 __first2, _ForwardIterator2 __last2, _Predicate __pred) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __swap_ranges;
-// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2>
-// optional<_ForwardIterator2>
+struct __find_first_of;
+// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _Predicate>
+// optional<_ForwardIterator1>
 // operator()(_Policy&&, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
-//                       _ForwardIterator2 __first2) const noexcept;
+//                       _ForwardIterator2 __first2, _ForwardIterator2 __last2, _Predicate __pred) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __replace;
-// template <class _Policy, class _ForwardIterator, class _Tp>
-// optional<__empty>
-// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last,
-//                       _Tp const& __old, _Tp const& __new) const noexcept;
+struct __find_if;
+// template <class _Policy, class _ForwardIterator, class _Predicate>
+// optional<_ForwardIterator>
+// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Predicate __pred) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __replace_if;
-// template <class _Policy, class _ForwardIterator, class _Predicate, class _Tp>
+struct __find_if_not;
+// template <class _Policy, class _ForwardIterator, class _Predicate>
+// optional<_ForwardIterator>
+// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Predicate __pred) const noexcept;
+
+template <class _Backend, class _ExecutionPolicy>
+struct __for_each;
+// template <class _Policy, class _ForwardIterator, class _Function>
 // optional<__empty>
-// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last,
-//                       _Predicate __pred, _Tp const& __new_value) const noexcept;
+// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Function __func) const noexcept;
+
+template <class _Backend, class _ExecutionPolicy>
+struct __for_each_n;
+// template <class _Policy, class _ForwardIterator, class _Size, class _Function>
+// optional<_ForwardIterator>
+// operator()(_Policy&&, _ForwardIterator __first, _Size __size, _Function __func) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
 struct __generate;
@@ -188,25 +215,43 @@ struct __generate_n;
 // operator()(_Policy&&, _ForwardIterator __first, _Size __n, _Generator __gen) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __reverse;
-// template <class _Policy, class _BidirectionalIterator>
-// optional<__empty>
-// operator()(_Policy&&, _BidirectionalIterator __first, _BidirectionalIterator __last) const noexcept;
+struct __is_heap;
+// template <class _Policy, class _RandomAccessIterator, class _Comp>
+// optional<bool>
+// operator()(_Policy&& __policy, _RandomAccessIterator __first, _RandomAccessIterator __last,
+//                                _Comp __comp) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __reverse_copy;
-// template <class _Policy, class _BidirectionalIterator, class _ForwardIterator>
+struct __is_heap_until;
+// template <class _Policy, class _RandomAccessIterator, class _Comp>
+// optional<_RandomAccessIterator>
+// operator()(_Policy&& __policy, _RandomAccessIterator __first, _RandomAccessIterator __last,
+//                                _Comp __comp) const noexcept;
+
+template <class _Backend, class _ExecutionPolicy>
+struct __is_partitioned;
+// template <class _Policy, class _ForwardIterator, class _Predicate>
+// optional<bool>
+// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Predicate __pred) const noexcept;
+
+template <class _Backend, class _ExecutionPolicy>
+struct __is_sorted;
+// template <class _Policy, class _ForwardIterator, class _Comp>
+// optional<bool>
+// operator()(_Policy&& __policy, _ForwardIterator __first, _ForwardIterator __last, _Comp&& __comp) const noexcept;
+
+template <class _Backend, class _ExecutionPolicy>
+struct __is_sorted_until;
+// template <class _Policy, class _ForwardIterator, class _Comp>
 // optional<_ForwardIterator>
-// operator()(_Policy&&, _BidirectionalIterator __first, _BidirectionalIterator __last,
-//                       _ForwardIterator __result) const noexcept;
+// operator()(_Policy&& __policy, _ForwardIterator __first, _ForwardIterator __last, _Comp&& __comp) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __merge;
-// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _ForwardOutIterator, class _Comp>
-// optional<_ForwardOutIterator>
-// operator()(_Policy&&, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
-//                       _ForwardIterator2 __first2, _ForwardIterator2 __last2,
-//                       _ForwardOutIterator __result, _Comp __comp) const noexcept;
+struct __lexicographical_compare;
+// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _Comp>
+// optional<bool>
+// operator()(_Policy&& __policy, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
+//                                _ForwardIterator2 __first2, _ForwardIterator2 __last2, _Comp __comp) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
 struct __max_element;
@@ -214,6 +259,14 @@ struct __max_element;
 // optional<_ForwardIterator>
 // operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Compare __comp) const noexcept;
 
+template <class _Backend, class _ExecutionPolicy>
+struct __merge;
+// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _ForwardOutIterator, class _Comp>
+// optional<_ForwardOutIterator>
+// operator()(_Policy&&, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
+//                       _ForwardIterator2 __first2, _ForwardIterator2 __last2,
+//                       _ForwardOutIterator __result, _Comp __comp) const noexcept;
+
 template <class _Backend, class _ExecutionPolicy>
 struct __min_element;
 // template <class _Policy, class _ForwardIterator, class _Compare>
@@ -227,51 +280,46 @@ struct __minmax_element;
 // operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Compare __comp) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __search_n;
-// template <class _Policy, class _ForwardIterator, class _Size, class _T, class _Predicate>
-// optional<_ForwardIterator>
-// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last,
-//                       _Size __count, const _T& __value, _Predicate __pred) const noexcept;
-
-template <class _Backend, class _ExecutionPolicy>
-struct __stable_sort;
-// template <class _Policy, class _RandomAccessIterator, class _Comp>
-// optional<__empty>
-// operator()(_Policy&&, _RandomAccessIterator __first, _RandomAccessIterator __last, _Comp __comp) const noexcept;
+struct __mismatch;
+// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _Comp>
+// optional<pair<_ForwardIterator1, _ForwardIterator2>>
+// operator()(_Policy&& __policy, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
+//                                _ForwardIterator2 __first2, _ForwardIterator2 __last2,
+//                                _Comp __comp) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __sort;
-// template <class _Policy, class _RandomAccessIterator, class _Comp>
-// optional<__empty>
-// operator()(_Policy&&, _RandomAccessIterator __first, _RandomAccessIterator __last, _Comp __comp) const noexcept;
+struct __mismatch_3leg;
+// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _Comp>
+// optional<pair<_ForwardIterator1, _ForwardIterator2>>
+// operator()(_Policy&& __policy, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
+//                                _ForwardIterator2 __first2, _Comp __comp) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __transform;
-// template <class _Policy, class _ForwardIterator, class _ForwardOutIterator, class _UnaryOperation>
+struct __move;
+// template <class _Policy, class _ForwardIterator, class _ForwardOutIterator>
 // optional<_ForwardOutIterator>
 // operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last,
-//                       _ForwardOutIterator __result,
-//                       _UnaryOperation __op) const noexcept;
+//                       _ForwardOutIterator __out_it) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __transform_binary;
-// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2,
-//                          class _ForwardOutIterator,
-//                          class _BinaryOperation>
-// optional<_ForwardOutIterator>
-// operator()(_Policy&&, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
-//                       _ForwardIterator2 __first2,
-//                       _ForwardOutIterator __result,
-//                       _BinaryOperation __op) const noexcept;
+struct __none_of;
+// template <class _Policy, class _ForwardIterator, class _Predicate>
+// optional<bool>
+// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Predicate __pred) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __replace_copy_if;
-// template <class _Policy, class _ForwardIterator, class _ForwardOutIterator, class _Predicate, class _Tp>
+struct __reduce;
+// template <class _Policy, class _ForwardIterator, class _Tp, class _BinaryOperation>
+// optional<_Tp>
+// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last,
+//                       _Tp __init, _BinaryOperation __op) const noexcept;
+
+template <class _Backend, class _ExecutionPolicy>
+struct __replace;
+// template <class _Policy, class _ForwardIterator, class _Tp>
 // optional<__empty>
 // operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last,
-//                       _ForwardOutIterator __out_it,
-//                       _Predicate __pred,
-//                       _Tp const& __new_value) const noexcept;
+//                       _Tp const& __old, _Tp const& __new) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
 struct __replace_copy;
@@ -283,24 +331,33 @@ struct __replace_copy;
 //                       _Tp const& __new_value) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __move;
-// template <class _Policy, class _ForwardIterator, class _ForwardOutIterator>
-// optional<_ForwardOutIterator>
+struct __replace_copy_if;
+// template <class _Policy, class _ForwardIterator, class _ForwardOutIterator, class _Predicate, class _Tp>
+// optional<__empty>
 // operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last,
-//                       _ForwardOutIterator __out_it) const noexcept;
+//                       _ForwardOutIterator __out_it,
+//                       _Predicate __pred,
+//                       _Tp const& __new_value) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __copy;
-// template <class _Policy, class _ForwardIterator, class _ForwardOutIterator>
-// optional<_ForwardOutIterator>
+struct __replace_if;
+// template <class _Policy, class _ForwardIterator, class _Predicate, class _Tp>
+// optional<__empty>
 // operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last,
-//                       _ForwardOutIterator __out_it) const noexcept;
+//                       _Predicate __pred, _Tp const& __new_value) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __copy_n;
-// template <class _Policy, class _ForwardIterator, class _Size, class _ForwardOutIterator>
-// optional<_ForwardOutIterator>
-// operator()(_Policy&&, _ForwardIterator __first, _Size __n, _ForwardOutIterator __out_it) const noexcept;
+struct __reverse;
+// template <class _Policy, class _BidirectionalIterator>
+// optional<__empty>
+// operator()(_Policy&&, _BidirectionalIterator __first, _BidirectionalIterator __last) const noexcept;
+
+template <class _Backend, class _ExecutionPolicy>
+struct __reverse_copy;
+// template <class _Policy, class _BidirectionalIterator, class _ForwardIterator>
+// optional<_ForwardIterator>
+// operator()(_Policy&&, _BidirectionalIterator __first, _BidirectionalIterator __last,
+//                       _ForwardIterator __result) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
 struct __rotate_copy;
@@ -310,132 +367,75 @@ struct __rotate_copy;
 //                       _ForwardOutIterator __out_it) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __transform_reduce;
-// template <class _Policy, class _ForwardIterator, class _Tp, class _BinaryOperation, class _UnaryOperation>
-// optional<_Tp>
-// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last,
-//                       _Tp __init,
-//                       _BinaryOperation __reduce,
-//                       _UnaryOperation __transform) const noexcept;
-
-template <class _Backend, class _ExecutionPolicy>
-struct __transform_reduce_binary;
-// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2,
-//           class _Tp, class _BinaryOperation1, class _BinaryOperation2>
-// optional<_Tp> operator()(_Policy&&, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
-//                                     _ForwardIterator2 __first2,
-//                                     _Tp __init,
-//                                     _BinaryOperation1 __reduce,
-//                                     _BinaryOperation2 __transform) const noexcept;
-
-template <class _Backend, class _ExecutionPolicy>
-struct __count_if;
-// template <class _Policy, class _ForwardIterator, class _Predicate>
-// optional<__iter_diff_t<_ForwardIterator>>
-// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Predicate __pred) const noexcept;
-
-template <class _Backend, class _ExecutionPolicy>
-struct __count;
-// template <class _Policy, class _ForwardIterator, class _Tp>
-// optional<__iter_diff_t<_ForwardIterator>>
-// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last, _Tp const& __value) const noexcept;
-
-template <class _Backend, class _ExecutionPolicy>
-struct __equal_3leg;
-// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _Predicate>
-// optional<bool>
-// operator()(_Policy&&, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
-//                       _ForwardIterator2 __first2,
-//                       _Predicate __pred) const noexcept;
-
-template <class _Backend, class _ExecutionPolicy>
-struct __equal;
-// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _Predicate>
-// optional<bool>
+struct __search;
+// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _BinaryPredicate>
+// optional<_ForwardIterator1>
 // operator()(_Policy&&, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
-//                       _ForwardIterator2 __first2, _ForwardIterator2 __last2,
-//                       _Predicate __pred) const noexcept;
+//                       _ForwardIterator2 __first2, _ForwardIterator2 __last2, _BinaryPredicate __pred) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __reduce;
-// template <class _Policy, class _ForwardIterator, class _Tp, class _BinaryOperation>
-// optional<_Tp>
+struct __search_n;
+// template <class _Policy, class _ForwardIterator, class _Size, class _T, class _Predicate>
+// optional<_ForwardIterator>
 // operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last,
-//                       _Tp __init, _BinaryOperation __op) const noexcept;
+//                       _Size __count, const _T& __value, _Predicate __pred) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __is_heap;
+struct __sort;
 // template <class _Policy, class _RandomAccessIterator, class _Comp>
-// optional<bool>
-// operator()(_Policy&& __policy, _RandomAccessIterator __first, _RandomAccessIterator __last,
-//                                _Comp __comp) const noexcept;
+// optional<__empty>
+// operator()(_Policy&&, _RandomAccessIterator __first, _RandomAccessIterator __last, _Comp __comp) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __is_heap_until;
+struct __stable_sort;
 // template <class _Policy, class _RandomAccessIterator, class _Comp>
-// optional<_RandomAccessIterator>
-// operator()(_Policy&& __policy, _RandomAccessIterator __first, _RandomAccessIterator __last,
-//                                _Comp __comp) const noexcept;
-
-template <class _Backend, class _ExecutionPolicy>
-struct __is_sorted;
-// template <class _Policy, class _ForwardIterator, class _Comp>
-// optional<bool>
-// operator()(_Policy&& __policy, _ForwardIterator __first, _ForwardIterator __last, _Comp&& __comp) const noexcept;
-
-template <class _Backend, class _ExecutionPolicy>
-struct __is_sorted_until;
-// template <class _Policy, class _ForwardIterator, class _Comp>
-// optional<_ForwardIterator>
-// operator()(_Policy&& __policy, _ForwardIterator __first, _ForwardIterator __last, _Comp&& __comp) const noexcept;
+// optional<__empty>
+// operator()(_Policy&&, _RandomAccessIterator __first, _RandomAccessIterator __last, _Comp __comp) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __adjacent_difference;
-// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _BinaryOperation>
+struct __swap_ranges;
+// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2>
 // optional<_ForwardIterator2>
-// operator()(_Policy&& __policy, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
-//                                _ForwardIterator2 __first2, _BinaryOperation &&__op) const noexcept;
-
-template <class _Backend, class _ExecutionPolicy>
-struct __mismatch;
-// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _Comp>
-// optional<pair<_ForwardIterator1, _ForwardIterator2>>
-// operator()(_Policy&& __policy, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
-//                                _ForwardIterator2 __first2, _ForwardIterator2 __last2,
-//                                _Comp __comp) const noexcept;
-
-template <class _Backend, class _ExecutionPolicy>
-struct __mismatch_3leg;
-// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _Comp>
-// optional<pair<_ForwardIterator1, _ForwardIterator2>>
-// operator()(_Policy&& __policy, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
-//                                _ForwardIterator2 __first2, _Comp __comp) const noexcept;
+// operator()(_Policy&&, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
+//                       _ForwardIterator2 __first2) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __adjacent_find;
-// template <class _Policy, class _ForwardIterator, class _BinaryPredicate>
-// optional<_ForwardIterator>
-// operator()(_Policy&& __policy, _ForwardIterator __first, _ForwardIterator __last,
-//                                _BinaryPredicate __predicate) const noexcept;
+struct __transform;
+// template <class _Policy, class _ForwardIterator, class _ForwardOutIterator, class _UnaryOperation>
+// optional<_ForwardOutIterator>
+// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last,
+//                       _ForwardOutIterator __result,
+//                       _UnaryOperation __op) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __lexicographical_compare;
-// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2, class _Comp>
-// optional<bool>
-// operator()(_Policy&& __policy, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
-//                                _ForwardIterator2 __first2, _ForwardIterator2 __last2, _Comp __comp) const noexcept;
+struct __transform_binary;
+// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2,
+//                          class _ForwardOutIterator,
+//                          class _BinaryOperation>
+// optional<_ForwardOutIterator>
+// operator()(_Policy&&, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
+//                       _ForwardIterator2 __first2,
+//                       _ForwardOutIterator __result,
+//                       _BinaryOperation __op) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __destroy;
-// template <class _Policy, class _ForwardIterator>
-// optional<__empty>
-// operator()(_Policy&& __policy, _ForwardIterator __first, _ForwardIterator __last) const noexcept;
+struct __transform_reduce;
+// template <class _Policy, class _ForwardIterator, class _Tp, class _BinaryOperation, class _UnaryOperation>
+// optional<_Tp>
+// operator()(_Policy&&, _ForwardIterator __first, _ForwardIterator __last,
+//                       _Tp __init,
+//                       _BinaryOperation __reduce,
+//                       _UnaryOperation __transform) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
-struct __destroy_n;
-// template <class _Policy, class _ForwardIterator, class _Size>
-// optional<_ForwardIterator>
-// operator()(_Policy&& __policy, _ForwardIterator __first, _Size __n) const noexcept;
+struct __transform_reduce_binary;
+// template <class _Policy, class _ForwardIterator1, class _ForwardIterator2,
+//           class _Tp, class _BinaryOperation1, class _BinaryOperation2>
+// optional<_Tp> operator()(_Policy&&, _ForwardIterator1 __first1, _ForwardIterator1 __last1,
+//                                     _ForwardIterator2 __first2,
+//                                     _Tp __init,
+//                                     _BinaryOperation1 __reduce,
+//                                     _BinaryOperation2 __transform) const noexcept;
 
 template <class _Backend, class _ExecutionPolicy>
 struct __uninitialized_copy;
@@ -463,6 +463,18 @@ struct __uninitialized_default_construct_n;
 // optional<_ForwardIterator>
 // operator()(_Policy&& __policy, _ForwardIterator __first, _Size __n) const noexcept;
 
+template <class _Backend, class _ExecutionPolicy>
+struct __uninitialized_fill;
+// template <class _Policy, class _ForwardIterator, class _Tp>
+// optional<__empty>
+// operator()(_Policy&& __policy, _ForwardIterator __first, _ForwardIterator __last, const _Tp &__value) const noexcept;
+
+template <class _Backend, class _ExecutionPolicy>
+struct __uninitialized_fill_n;
+// template <class _Policy, class _ForwardIterator, class _Size, class _Tp>
+// optional<_ForwardIterator>
+// operator()(_Policy&& __policy, _ForwardIterator __first, _Size __n, const _Tp &__value) const noexcept;
+
 template <class _Backend, class _ExecutionPolicy>
 struct __uninitialized_move;
 // template <class _Policy, class _ForwardIterator1, class _ForwardIterator2>
@@ -489,18 +501,6 @@ struct __uninitialized_value_construct_n;
 // optional<_ForwardIterator>
 // operator()(_Policy&& __policy, _ForwardIterator __first, _Size __n) const noexcept;
 
-template <class _Backend, class _ExecutionPolicy>
-struct __uninitialized_fill;
-// template <class _Policy, class _ForwardIterator, class _Tp>
-// optional<__empty>
-// operator()(_Policy&& __policy, _ForwardIterator __first, _ForwardIterator __last, const _Tp &__value) const noexcept;
-
-template <class _Backend, class _ExecutionPolicy>
-struct __uninitialized_fill_n;
-// template <class _Policy, class _ForwardIterator, class _Size, class _Tp>
-// optional<_ForwardIterator>
-// operator()(_Policy&& __policy, _ForwardIterator __first, _Size __n, const _Tp &__value) const noexcept;
-
 } // namespace __pstl
 _LIBCPP_END_NAMESPACE_STD
 



More information about the libcxx-commits mailing list