|
232 | 232 | constexpr I uninitialized_default_construct_n(I first, // freestanding |
233 | 233 | iter_difference_t<I> n); |
234 | 234 |
|
235 | | - template<@\exposconcept{execution-policy}@ Ep, @\exposconcept{nothrow-random-access-iterator}@ I, @\exposconcept{nothrow-sentinel-for}@<I> S> |
| 235 | + template<@\exposconcept{execution-policy}@ Ep, @\exposconcept{nothrow-random-access-iterator}@ I, |
| 236 | + @\exposconcept{nothrow-sized-sentinel-for}@<I> S> |
236 | 237 | requires @\libconcept{default_initializable}@<iter_value_t<I>> |
237 | 238 | I uninitialized_default_construct(Ep&& exec, I first, S last); // freestanding-deleted, |
238 | 239 | // see \ref{algorithms.parallel.overloads} |
|
276 | 277 | constexpr I uninitialized_value_construct_n(I first, // freestanding |
277 | 278 | iter_difference_t<I> n); |
278 | 279 |
|
279 | | - template<@\exposconcept{execution-policy}@ Ep, @\exposconcept{nothrow-random-access-iterator}@ I, @\exposconcept{nothrow-sentinel-for}@<I> S> |
| 280 | + template<@\exposconcept{execution-policy}@ Ep, @\exposconcept{nothrow-random-access-iterator}@ I, |
| 281 | + @\exposconcept{nothrow-sized-sentinel-for}@<I> S> |
280 | 282 | requires @\libconcept{default_initializable}@<iter_value_t<I>> |
281 | 283 | I uninitialized_value_construct(Ep&& exec, I first, S last); // freestanding-deleted, |
282 | 284 | // see \ref{algorithms.parallel.overloads} |
|
333 | 335 | O ofirst, S olast); |
334 | 336 |
|
335 | 337 | template<@\exposconcept{execution-policy}@ Ep, @\libconcept{random_access_iterator}@ I, @\libconcept{sized_sentinel_for}@<I> S1, |
336 | | - @\exposconcept{nothrow-random-access-iterator}@ O, @\exposconcept{nothrow-sentinel-for}@<O> S2> |
| 338 | + @\exposconcept{nothrow-random-access-iterator}@ O, @\exposconcept{nothrow-sized-sentinel-for}@<O> S2> |
337 | 339 | requires @\libconcept{constructible_from}@<iter_value_t<O>, iter_reference_t<I>> |
338 | 340 | uninitialized_copy_result<I, O> |
339 | 341 | uninitialized_copy(Ep&& exec, I ifirst, S1 ilast, // freestanding-deleted, |
|
345 | 347 | uninitialized_copy(Ep&& exec, IR&& in_range, OR&& out_range); // freestanding-deleted, |
346 | 348 | // see \ref{algorithms.parallel.overloads} |
347 | 349 | template<@\exposconcept{execution-policy}@ Ep, @\libconcept{random_access_iterator}@ I, @\exposconcept{nothrow-random-access-iterator}@ O, |
348 | | - @\exposconcept{nothrow-sentinel-for}@<O> S> |
| 350 | + @\exposconcept{nothrow-sized-sentinel-for}@<O> S> |
349 | 351 | requires @\libconcept{constructible_from}@<iter_value_t<O>, iter_reference_t<I>> |
350 | 352 | uninitialized_copy_n_result<I, O> |
351 | 353 | uninitialized_copy_n(Ep&& exec, I ifirst, iter_difference_t<I> n, // freestanding-deleted, |
|
395 | 397 | O ofirst, S olast); |
396 | 398 |
|
397 | 399 | template<@\exposconcept{execution-policy}@ Ep, @\libconcept{random_access_iterator}@ I, @\libconcept{sized_sentinel_for}@<I> S1, |
398 | | - @\exposconcept{nothrow-random-access-iterator}@ O, @\exposconcept{nothrow-sentinel-for}@<O> S2> |
| 400 | + @\exposconcept{nothrow-random-access-iterator}@ O, @\exposconcept{nothrow-sized-sentinel-for}@<O> S2> |
399 | 401 | requires @\libconcept{constructible_from}@<iter_value_t<O>, iter_rvalue_reference_t<I>> |
400 | 402 | uninitialized_move_result<I, O> |
401 | 403 | uninitialized_move(Ep&& exec, I ifirst, S1 ilast, // freestanding-deleted, |
|
408 | 410 | // see \ref{algorithms.parallel.overloads} |
409 | 411 |
|
410 | 412 | template<@\exposconcept{execution-policy}@ Ep, @\libconcept{random_access_iterator}@ I, |
411 | | - @\exposconcept{nothrow-random-access-iterator}@ O, @\exposconcept{nothrow-sentinel-for}@<O> S> |
| 413 | + @\exposconcept{nothrow-random-access-iterator}@ O, @\exposconcept{nothrow-sized-sentinel-for}@<O> S> |
412 | 414 | requires @\libconcept{constructible_from}@<iter_value_t<O>, iter_rvalue_reference_t<I>> |
413 | 415 | uninitialized_move_n_result<I, O> |
414 | 416 | uninitialized_move_n(Ep&& exec, I ifirst, iter_difference_t<I> n, // freestanding-deleted, |
|
446 | 448 | iter_difference_t<I> n, const T& x); |
447 | 449 |
|
448 | 450 | template<@\exposconcept{execution-policy}@ Ep, @\exposconcept{nothrow-random-access-iterator}@ I, |
449 | | - @\exposconcept{nothrow-sentinel-for}@<I> S, class T> |
| 451 | + @\exposconcept{nothrow-sized-sentinel-for}@<I> S, class T> |
450 | 452 | requires @\libconcept{constructible_from}@<iter_value_t<I>, const T&> |
451 | 453 | I uninitialized_fill(Ep&& exec, I first, S last, const T& x); // freestanding-deleted, |
452 | 454 | // see \ref{algorithms.parallel.overloads} |
|
502 | 504 | requires @\libconcept{destructible}@<iter_value_t<I>> |
503 | 505 | constexpr I destroy_n(I first, iter_difference_t<I> n) noexcept; // freestanding |
504 | 506 |
|
505 | | - template<@\exposconcept{execution-policy}@ Ep, @\exposconcept{nothrow-random-access-iterator}@ I, @\exposconcept{nothrow-sentinel-for}@<I> S> |
| 507 | + template<@\exposconcept{execution-policy}@ Ep, @\exposconcept{nothrow-random-access-iterator}@ I, |
| 508 | + @\exposconcept{nothrow-sized-sentinel-for}@<I> S> |
506 | 509 | requires @\libconcept{destructible}@<iter_value_t<I>> |
507 | 510 | I destroy(Ep&& exec, I first, S last) noexcept; // freestanding-deleted, |
508 | 511 | // see \ref{algorithms.parallel.overloads} |
|
0 commit comments