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
213
212
the accumulator would be consistent with the combiner but doubling it or assigning to it would not.</cxx-note>
214
213
</p>
215
-
</ins>
216
214
217
215
<cxx-function>
218
-
<cxx-signature><ins>template<class T, class BinaryOperation>
219
-
<em>unspecified</em> reduction(T& var, const T& identity, BinaryOperation combiner);</ins></cxx-signature>
216
+
<cxx-signature>template<class T, class BinaryOperation>
217
+
<em>unspecified</em> reduction(T& var, const T& identity, BinaryOperation combiner);</cxx-signature>
220
218
221
-
<ins>
222
-
<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>
223
-
</ins>
219
+
<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>
224
220
225
-
<ins>
226
-
<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>
227
-
</ins>
221
+
<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>
248
-
</ins>
249
-
250
-
<ins>
251
-
<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>
241
+
242
+
<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