@@ -44,12 +44,11 @@ uninitialized_copy(_ExecutionPolicy&& __exec, _InputIterator __first, _InputIter
44
44
__is_parallel);
45
45
},
46
46
[&]() {
47
- return __internal::__pattern_walk2 (
48
- std::forward<_ExecutionPolicy>(__exec), __first, __last, __result,
49
- [](_ReferenceType1 __val1, _ReferenceType2 __val2) {
50
- ::new (std::addressof (__val2)) _ValueType2 (__val1);
51
- },
52
- __is_vector, __is_parallel);
47
+ return __internal::__pattern_walk2 (std::forward<_ExecutionPolicy>(__exec), __first, __last, __result,
48
+ [](_ReferenceType1 __val1, _ReferenceType2 __val2) {
49
+ ::new (std::addressof (__val2)) _ValueType2 (__val1);
50
+ },
51
+ __is_vector, __is_parallel);
53
52
});
54
53
}
55
54
@@ -79,12 +78,11 @@ uninitialized_copy_n(_ExecutionPolicy&& __exec, _InputIterator __first, _Size __
79
78
__is_parallel);
80
79
},
81
80
[&]() {
82
- return __internal::__pattern_walk2_n (
83
- std::forward<_ExecutionPolicy>(__exec), __first, __n, __result,
84
- [](_ReferenceType1 __val1, _ReferenceType2 __val2) {
85
- ::new (std::addressof (__val2)) _ValueType2 (__val1);
86
- },
87
- __is_vector, __is_parallel);
81
+ return __internal::__pattern_walk2_n (std::forward<_ExecutionPolicy>(__exec), __first, __n, __result,
82
+ [](_ReferenceType1 __val1, _ReferenceType2 __val2) {
83
+ ::new (std::addressof (__val2)) _ValueType2 (__val1);
84
+ },
85
+ __is_vector, __is_parallel);
88
86
});
89
87
}
90
88
@@ -116,12 +114,11 @@ uninitialized_move(_ExecutionPolicy&& __exec, _InputIterator __first, _InputIter
116
114
__is_parallel);
117
115
},
118
116
[&]() {
119
- return __internal::__pattern_walk2 (
120
- std::forward<_ExecutionPolicy>(__exec), __first, __last, __result,
121
- [](_ReferenceType1 __val1, _ReferenceType2 __val2) {
122
- ::new (std::addressof (__val2)) _ValueType2 (std::move (__val1));
123
- },
124
- __is_vector, __is_parallel);
117
+ return __internal::__pattern_walk2 (std::forward<_ExecutionPolicy>(__exec), __first, __last, __result,
118
+ [](_ReferenceType1 __val1, _ReferenceType2 __val2) {
119
+ ::new (std::addressof (__val2)) _ValueType2 (std::move (__val1));
120
+ },
121
+ __is_vector, __is_parallel);
125
122
});
126
123
}
127
124
@@ -151,12 +148,11 @@ uninitialized_move_n(_ExecutionPolicy&& __exec, _InputIterator __first, _Size __
151
148
__is_parallel);
152
149
},
153
150
[&]() {
154
- return __internal::__pattern_walk2_n (
155
- std::forward<_ExecutionPolicy>(__exec), __first, __n, __result,
156
- [](_ReferenceType1 __val1, _ReferenceType2 __val2) {
157
- ::new (std::addressof (__val2)) _ValueType2 (std::move (__val1));
158
- },
159
- __is_vector, __is_parallel);
151
+ return __internal::__pattern_walk2_n (std::forward<_ExecutionPolicy>(__exec), __first, __n, __result,
152
+ [](_ReferenceType1 __val1, _ReferenceType2 __val2) {
153
+ ::new (std::addressof (__val2)) _ValueType2 (std::move (__val1));
154
+ },
155
+ __is_vector, __is_parallel);
160
156
});
161
157
}
162
158
@@ -173,22 +169,23 @@ uninitialized_fill(_ExecutionPolicy&& __exec, _ForwardIterator __first, _Forward
173
169
const auto __is_parallel = __internal::__is_parallelization_preferred<_ExecutionPolicy, _ForwardIterator>(__exec);
174
170
const auto __is_vector = __internal::__is_vectorization_preferred<_ExecutionPolicy, _ForwardIterator>(__exec);
175
171
176
- __internal::__invoke_if_else (
177
- std::is_arithmetic<_ValueType>(),
178
- [&]() {
179
- __internal::__pattern_walk_brick (
180
- std::forward<_ExecutionPolicy>(__exec), __first, __last,
181
- [&__value, &__is_vector](_ForwardIterator __begin, _ForwardIterator __end) {
182
- __internal::__brick_fill (__begin, __end, _ValueType (__value), __is_vector);
183
- },
184
- __is_parallel);
185
- },
186
- [&]() {
187
- __internal::__pattern_walk1 (
188
- std::forward<_ExecutionPolicy>(__exec), __first, __last,
189
- [&__value](_ReferenceType __val) { ::new (std::addressof (__val)) _ValueType (__value); }, __is_vector,
190
- __is_parallel);
191
- });
172
+ __internal::__invoke_if_else (std::is_arithmetic<_ValueType>(),
173
+ [&]() {
174
+ __internal::__pattern_walk_brick (
175
+ std::forward<_ExecutionPolicy>(__exec), __first, __last,
176
+ [&__value, &__is_vector](_ForwardIterator __begin, _ForwardIterator __end) {
177
+ __internal::__brick_fill (__begin, __end, _ValueType (__value), __is_vector);
178
+ },
179
+ __is_parallel);
180
+ },
181
+ [&]() {
182
+ __internal::__pattern_walk1 (std::forward<_ExecutionPolicy>(__exec), __first,
183
+ __last,
184
+ [&__value](_ReferenceType __val) {
185
+ ::new (std::addressof (__val)) _ValueType (__value);
186
+ },
187
+ __is_vector, __is_parallel);
188
+ });
192
189
}
193
190
194
191
template <class _ExecutionPolicy , class _ForwardIterator , class _Size , class _Tp >
@@ -234,9 +231,8 @@ destroy(_ExecutionPolicy&& __exec, _ForwardIterator __first, _ForwardIterator __
234
231
const auto __is_vector = __internal::__is_vectorization_preferred<_ExecutionPolicy, _ForwardIterator>(__exec);
235
232
236
233
__internal::__invoke_if_not (std::is_trivially_destructible<_ValueType>(), [&]() {
237
- __internal::__pattern_walk1 (
238
- std::forward<_ExecutionPolicy>(__exec), __first, __last, [](_ReferenceType __val) { __val.~_ValueType (); },
239
- __is_vector, __is_parallel);
234
+ __internal::__pattern_walk1 (std::forward<_ExecutionPolicy>(__exec), __first, __last,
235
+ [](_ReferenceType __val) { __val.~_ValueType (); }, __is_vector, __is_parallel);
240
236
});
241
237
}
242
238
@@ -254,9 +250,9 @@ destroy_n(_ExecutionPolicy&& __exec, _ForwardIterator __first, _Size __n)
254
250
return __internal::__invoke_if_else (
255
251
std::is_trivially_destructible<_ValueType>(), [&]() { return std::next (__first, __n); },
256
252
[&]() {
257
- return __internal::__pattern_walk1_n (
258
- std::forward<_ExecutionPolicy>(__exec), __first, __n, [](_ReferenceType __val) { __val.~_ValueType (); },
259
- __is_vector, __is_parallel);
253
+ return __internal::__pattern_walk1_n (std::forward<_ExecutionPolicy>(__exec), __first, __n,
254
+ [](_ReferenceType __val) { __val.~_ValueType (); }, __is_vector ,
255
+ __is_parallel);
260
256
});
261
257
}
262
258
@@ -274,9 +270,9 @@ uninitialized_default_construct(_ExecutionPolicy&& __exec, _ForwardIterator __fi
274
270
const auto __is_vector = __internal::__is_vectorization_preferred<_ExecutionPolicy, _ForwardIterator>(__exec);
275
271
276
272
__internal::__invoke_if_not (std::is_trivial<_ValueType>(), [&]() {
277
- __internal::__pattern_walk1 (
278
- std::forward<_ExecutionPolicy>(__exec), __first, __last ,
279
- [](_ReferenceType __val) { :: new ( std::addressof (__val)) _ValueType; }, __is_vector, __is_parallel);
273
+ __internal::__pattern_walk1 (std::forward<_ExecutionPolicy>(__exec), __first, __last,
274
+ [](_ReferenceType __val) { :: new ( std::addressof (__val)) _ValueType; }, __is_vector ,
275
+ __is_parallel);
280
276
});
281
277
}
282
278
@@ -291,13 +287,13 @@ uninitialized_default_construct_n(_ExecutionPolicy&& __exec, _ForwardIterator __
291
287
const auto __is_parallel = __internal::__is_parallelization_preferred<_ExecutionPolicy, _ForwardIterator>(__exec);
292
288
const auto __is_vector = __internal::__is_vectorization_preferred<_ExecutionPolicy, _ForwardIterator>(__exec);
293
289
294
- return __internal::__invoke_if_else (
295
- std::is_trivial<_ValueType>(), [&]() { return std::next (__first, __n); },
296
- [&]() {
297
- return __internal::__pattern_walk1_n (
298
- std::forward<_ExecutionPolicy>(__exec), __first, __n ,
299
- [](_ReferenceType __val) { :: new ( std::addressof (__val)) _ValueType; }, __is_vector, __is_parallel);
300
- });
290
+ return __internal::__invoke_if_else (std::is_trivial<_ValueType>(), [&]() { return std::next (__first, __n); },
291
+ [&]() {
292
+ return __internal::__pattern_walk1_n (
293
+ std::forward<_ExecutionPolicy>(__exec), __first, __n,
294
+ [](_ReferenceType __val) { :: new ( std::addressof (__val)) _ValueType; } ,
295
+ __is_vector, __is_parallel);
296
+ });
301
297
}
302
298
303
299
// [uninitialized.construct.value]
@@ -316,17 +312,16 @@ uninitialized_value_construct(_ExecutionPolicy&& __exec, _ForwardIterator __firs
316
312
__internal::__invoke_if_else (
317
313
std::is_trivial<_ValueType>(),
318
314
[&]() {
319
- __internal::__pattern_walk_brick (
320
- std::forward<_ExecutionPolicy>(__exec), __first, __last,
321
- [__is_vector](_ForwardIterator __begin, _ForwardIterator __end) {
322
- __internal::__brick_fill (__begin, __end, _ValueType (), __is_vector);
323
- },
324
- __is_parallel);
315
+ __internal::__pattern_walk_brick (std::forward<_ExecutionPolicy>(__exec), __first, __last,
316
+ [__is_vector](_ForwardIterator __begin, _ForwardIterator __end) {
317
+ __internal::__brick_fill (__begin, __end, _ValueType (), __is_vector);
318
+ },
319
+ __is_parallel);
325
320
},
326
321
[&]() {
327
- __internal::__pattern_walk1 (
328
- std::forward<_ExecutionPolicy>(__exec), __first, __last ,
329
- [](_ReferenceType __val) { :: new ( std::addressof (__val)) _ValueType (); }, __is_vector, __is_parallel);
322
+ __internal::__pattern_walk1 (std::forward<_ExecutionPolicy>(__exec), __first, __last,
323
+ [](_ReferenceType __val) { :: new ( std::addressof (__val)) _ValueType (); } ,
324
+ __is_vector, __is_parallel);
330
325
});
331
326
}
332
327
@@ -344,12 +339,12 @@ uninitialized_value_construct_n(_ExecutionPolicy&& __exec, _ForwardIterator __fi
344
339
return __internal::__invoke_if_else (
345
340
std::is_trivial<_ValueType>(),
346
341
[&]() {
347
- return __internal::__pattern_walk_brick_n (
348
- std::forward<_ExecutionPolicy>(__exec), __first, __n,
349
- [__is_vector](_ForwardIterator __begin, _Size __count) {
350
- return __internal::__brick_fill_n (__begin, __count, _ValueType (), __is_vector);
351
- },
352
- __is_parallel);
342
+ return __internal::__pattern_walk_brick_n (std::forward<_ExecutionPolicy>(__exec), __first, __n,
343
+ [__is_vector](_ForwardIterator __begin, _Size __count) {
344
+ return __internal::__brick_fill_n ( __begin, __count,
345
+ _ValueType (), __is_vector);
346
+ },
347
+ __is_parallel);
353
348
},
354
349
[&]() {
355
350
return __internal::__pattern_walk1_n (
0 commit comments