| 424 | |
| 425 | template <class ForwardIt1, class ForwardIt2, class UnaryPredicate> |
| 426 | sycl::event remove_copy_if(sycl::queue &q, util::allocation_group &scratch_allocations, |
| 427 | ForwardIt1 first, ForwardIt1 last, ForwardIt2 d_first, |
| 428 | UnaryPredicate p, std::size_t *num_elements_copied = nullptr, |
| 429 | const std::vector<sycl::event> &deps = {}) { |
| 430 | auto pred = [p](auto x){return !p(x);}; |
| 431 | return copy_if(q, scratch_allocations, first, last, d_first, pred, |
| 432 | num_elements_copied, deps); |
| 433 | } |
| 434 | |
| 435 | template <class ForwardIt, class T> |
| 436 | sycl::event replace(sycl::queue &q, ForwardIt first, ForwardIt last, |