You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
to commutative operations closely related to the combiner operation. For example if the combiner is <code>plus<T></code>, incrementing
214
213
the accumulator would be consistent with the combiner but doubling it or assigning to it would not.</cxx-note>
215
214
</p>
216
-
</ins>
217
215
218
216
<cxx-function>
219
-
<cxx-signature><ins>template<class T, class BinaryOperation>
220
-
<em>unspecified</em> reduction(T& var, const T& identity, BinaryOperation combiner);</ins></cxx-signature>
217
+
<cxx-signature>template<class T, class BinaryOperation>
218
+
<em>unspecified</em> reduction(T& var, const T& identity, BinaryOperation combiner);</cxx-signature>
221
219
222
-
<ins>
223
-
<cxx-requires><ins>T shall meet the requirements of <code>CopyConstructible</code> and <code>MoveAssignable</code>. The expression <code>var = combiner(var, var)</code> shall be well-formed.</ins></cxx-requires>
224
-
</ins>
220
+
<cxx-requires>T shall meet the requirements of <code>CopyConstructible</code> and <code>MoveAssignable</code>. The expression <code>var = combiner(var, var)</code> shall be well-formed.</cxx-requires>
225
221
226
-
<ins>
227
-
<cxx-returns><ins>a reduction object of unspecified type having reduction value type <code>T</code>, reduction identity <code>identity</code>, combiner function object <code>combiner</code>, and using the object referenced by <code>var</code> as its live-out object.</ins></cxx-returns>
228
-
</ins>
222
+
<cxx-returns>a reduction object of unspecified type having reduction value type <code>T</code>, reduction identity <code>identity</code>, combiner function object <code>combiner</code>, and using the object referenced by <code>var</code> as its live-out object.</cxx-returns>
<cxx-requires><ins>T shall meet the requirements of <code>CopyConstructible</code> and <code>MoveAssignable</code>.</ins></cxx-requires>
249
-
</ins>
250
-
251
-
<ins>
252
-
<cxx-returns><ins>a reduction object of unspecified type having reduction value type <code>T</code>, reduction identity and combiner operation as specified in table <cxx-refto="reduction-identities-and-combiner-operations"></cxx-ref> and using the object referenced by <code>var</code> as its live-out object.</ins></cxx-returns>
<cxx-requires>T shall meet the requirements of <code>CopyConstructible</code> and <code>MoveAssignable</code>.></cxx-requires>
242
+
243
+
<cxx-returns>a reduction object of unspecified type having reduction value type <code>T</code>, reduction identity and combiner operation as specified in table <cxx-refto="reduction-identities-and-combiner-operations"></cxx-ref> and using the object referenced by <code>var</code> as its live-out object.</cxx-returns>
0 commit comments