@@ -1310,6 +1310,7 @@ <h1>Contents</h1>
13101310 template<class T> execution_policy& operator=(const T& exec);
13111311
13121312 < cxx-ref insynopsis ="" to ="parallel.execpol.access "> // < i > < a title ="parallel.execpol.access " href ="#parallel.execpol.access "> 2.7.2</ a > , execution_policy object access</ i > </ cxx-ref >
1313+ < ins > const type_info& type() const noexcept;</ ins >
13131314 template<class T> T* get() noexcept;
13141315 template<class T> const T* get() const noexcept;
13151316};
@@ -2146,6 +2147,11 @@ <h1>Contents</h1>
21462147 template<class InputIterator, class Size, class Function>
21472148 InputIterator for_each_n(InputIterator first, Size n,
21482149 Function f);
2150+ < ins > template<class ExecutionPolicy,
2151+ class InputIterator, class Size, class Function>
2152+ InputIterator for_each_n(ExecutionPolicy&& exec,
2153+ InputIterator first, Size n,
2154+ Function f);</ ins >
21492155}
21502156}
21512157}
@@ -2368,47 +2374,105 @@ <h1>Contents</h1>
23682374 template<class InputIterator>
23692375 typename iterator_traits<InputIterator>::value_type
23702376 reduce(InputIterator first, InputIterator last);
2377+ < ins > template<class ExecutionPolicy,
2378+ InputIterator>
2379+ typename iterator_traits<InputIterator>::value_type
2380+ reduce(ExecutionPolicy&& exec,
2381+ InputIterator first, InputIterator last);</ ins >
23712382 template<class InputIterator, class T>
2372- T reduce(InputIterator first, InputIterator last< ins > ,</ ins > T init);
2383+ T reduce(InputIterator first, InputIterator last, T init);
2384+ < ins > template<class ExecutionPolicy,
2385+ class InputIterator, class T>
2386+ T reduce(ExecutionPolicy&& exec,
2387+ InputIterator first, InputIterator last, T init);</ ins >
23732388 template<class InputIterator, class T, class BinaryOperation>
23742389 T reduce(InputIterator first, InputIterator last, T init,
23752390 BinaryOperation binary_op);
2391+ < ins > template<class ExecutionPolicy, class InputIterator, class T, class BinaryOperation>
2392+ T reduce(ExecutionPolicy&& exec,
2393+ InputIterator first, InputIterator last, T init,
2394+ BinaryOperation binary_op);</ ins >
23762395
23772396 template<class InputIterator, class OutputIterator,
23782397 class T>
23792398 OutputIterator
23802399 exclusive_scan(InputIterator first, InputIterator last,
23812400 OutputIterator result,
23822401 T init);
2402+ < ins > template<class ExecutionPolicy,
2403+ class InputIterator, class OutputIterator,
2404+ class T>
2405+ OutputIterator
2406+ exclusive_scan(ExecutionPolicy&& exec,
2407+ InputIterator first, InputIterator last,
2408+ OutputIterator result,
2409+ T init);</ ins >
23832410 template<class InputIterator, class OutputIterator,
23842411 class T, class BinaryOperation>
23852412 OutputIterator
23862413 exclusive_scan(InputIterator first, InputIterator last,
23872414 OutputIterator result,
23882415 T init, BinaryOperation binary_op);
2416+ < ins > template<class ExecutionPolicy,
2417+ class InputIterator, class OutputIterator,
2418+ class T, class BinaryOperation>
2419+ OutputIterator
2420+ exclusive_scan(ExecutionPolicy&& exec,
2421+ InputIterator first, InputIterator last,
2422+ OutputIterator result,
2423+ T init, BinaryOperation binary_op);</ ins >
23892424
23902425 template<class InputIterator, class OutputIterator>
23912426 OutputIterator
23922427 inclusive_scan(InputIterator first, InputIterator last,
23932428 OutputIterator result);
2429+ < ins > template<class ExecutionPolicy,
2430+ class InputIterator, class OutputIterator>
2431+ OutputIterator
2432+ inclusive_scan(ExecutionPolicy&& exec,
2433+ InputIterator first, InputIterator last,
2434+ OutputIterator result);</ ins >
23942435 template<class InputIterator, class OutputIterator,
23952436 class BinaryOperation>
23962437 OutputIterator
23972438 inclusive_scan(InputIterator first, InputIterator last,
23982439 OutputIterator result,
23992440 BinaryOperation binary_op);
2441+ < ins > template<class ExecutionPolicy,
2442+ class InputIterator, class OutputIterator,
2443+ class BinaryOperation>
2444+ OutputIterator
2445+ inclusive_scan(ExecutionPolicy&& exec,
2446+ InputIterator first, InputIterator last,
2447+ OutputIterator result,
2448+ BinaryOperation binary_op);</ ins >
24002449 template<class InputIterator, class OutputIterator,
24012450 class BinaryOperation, class T>
24022451 OutputIterator
24032452 inclusive_scan(InputIterator first, InputIterator last,
24042453 OutputIterator result,
24052454 BinaryOperation binary_op, T init);
2455+ < ins > template<class ExecutionPolicy,
2456+ class InputIterator, class OutputIterator,
2457+ class BinaryOperation, class T>
2458+ OutputIterator
2459+ inclusive_scan(ExecutionPolicy&& exec,
2460+ InputIterator first, InputIterator last,
2461+ OutputIterator result,
2462+ BinaryOperation binary_op, T init);</ ins >
24062463
24072464 template<class InputIterator, class UnaryOperation,
24082465 class T, class BinaryOperation>
24092466 T transform_reduce(InputIterator first, InputIterator last,
24102467 UnaryOperation unary_op,
24112468 T init, BinaryOperation binary_op);
2469+ < ins > template<class ExecutionPolicy,
2470+ class InputIterator, class UnaryOperation,
2471+ class T, class BinaryOperation>
2472+ T transform_reduce(ExecutionPolicy&& exec,
2473+ InputIterator first, InputIterator last,
2474+ UnaryOperation unary_op,
2475+ T init, BinaryOperation binary_op);</ ins >
24122476
24132477 template<class InputIterator, class OutputIterator,
24142478 class UnaryOperation, class T, class BinaryOperation>
@@ -2417,6 +2481,15 @@ <h1>Contents</h1>
24172481 OutputIterator result,
24182482 UnaryOperation unary_op,
24192483 T init, BinaryOperation binary_op);
2484+ < ins > template<class ExecutionPolicy,
2485+ class InputIterator, class OutputIterator,
2486+ class UnaryOperation, class T, class BinaryOperation>
2487+ OutputIterator
2488+ transform_exclusive_scan(ExecutionPolicy&& exec,
2489+ InputIterator first, InputIterator last,
2490+ OutputIterator result,
2491+ UnaryOperation unary_op,
2492+ T init, BinaryOperation binary_op);</ ins >
24202493
24212494 template<class InputIterator, class OutputIterator,
24222495 class UnaryOperation, class BinaryOperation>
@@ -2425,6 +2498,15 @@ <h1>Contents</h1>
24252498 OutputIterator result,
24262499 UnaryOperation unary_op,
24272500 BinaryOperation binary_op);
2501+ < ins > template<class ExecutionPolicy,
2502+ class InputIterator, class OutputIterator,
2503+ class UnaryOperation, class BinaryOperation>
2504+ OutputIterator
2505+ transform_inclusive_scan(ExecutionPolicy&& exec,
2506+ InputIterator first, InputIterator last,
2507+ OutputIterator result,
2508+ UnaryOperation unary_op,
2509+ BinaryOperation binary_op);</ ins >
24282510
24292511 template<class InputIterator, class OutputIterator,
24302512 class UnaryOperation, class BinaryOperation, class T>
@@ -2433,6 +2515,15 @@ <h1>Contents</h1>
24332515 OutputIterator result,
24342516 UnaryOperation unary_op,
24352517 BinaryOperation binary_op, T init);
2518+ < ins > template<class ExecutionPolicy,
2519+ class InputIterator, class OutputIterator,
2520+ class UnaryOperation, class BinaryOperation, class T>
2521+ OutputIterator
2522+ transform_inclusive_scan(ExecutionPolicy&& exec,
2523+ InputIterator first, InputIterator last,
2524+ OutputIterator result,
2525+ UnaryOperation unary_op,
2526+ BinaryOperation binary_op, T init);</ ins >
24362527}
24372528}
24382529}
0 commit comments