return __internal::__except_handler([&__exec, __n, __first, __result, __is_vector, __pred, &__mask_buf]() {
bool* __mask = __mask_buf.get();
_DifferenceType __m{};
- __par_backend::parallel_strict_scan(
+ __par_backend::__parallel_strict_scan(
std::forward<_ExecutionPolicy>(__exec), __n, _DifferenceType(0),
[=](_DifferenceType __i, _DifferenceType __len) { // Reduce
return __internal::__brick_calc_mask_1<_DifferenceType>(__first + __i, __first + (__i + __len),
__mask += __min;
_DifferenceType __m{};
// 2. Elements that doesn't satisfy pred are moved to result
- __par_backend::parallel_strict_scan(
+ __par_backend::__parallel_strict_scan(
std::forward<_ExecutionPolicy>(__exec), __n, _DifferenceType(0),
[__mask, __is_vector](_DifferenceType __i, _DifferenceType __len) {
return __internal::__brick_count(__mask + __i, __mask + __i + __len, [](bool __val) { return __val; },
return __internal::__except_handler([&__exec, __n, __first, __result, __pred, __is_vector, &__mask_buf]() {
bool* __mask = __mask_buf.get();
_DifferenceType __m{};
- __par_backend::parallel_strict_scan(
+ __par_backend::__parallel_strict_scan(
std::forward<_ExecutionPolicy>(__exec), __n, _DifferenceType(0),
[=](_DifferenceType __i, _DifferenceType __len) -> _DifferenceType { // Reduce
_DifferenceType __extra = 0;
&__mask_buf]() {
bool* __mask = __mask_buf.get();
_ReturnType __m{};
- __par_backend::parallel_strict_scan(
+ __par_backend::__parallel_strict_scan(
std::forward<_ExecutionPolicy>(__exec), __n, std::make_pair(_DifferenceType(0), _DifferenceType(0)),
[=](_DifferenceType __i, _DifferenceType __len) { // Reduce
return __internal::__brick_calc_mask_1<_DifferenceType>(__first + __i, __first + (__i + __len),
__internal::__brick_move(__buffer + __s.__buf_pos, __buffer + (__s.__buf_pos + __s.__len),
__result + __s.__pos, __is_vector);
};
- __par_backend::parallel_strict_scan(
+ __par_backend::__parallel_strict_scan(
std::forward<_ExecutionPolicy>(__exec), __n1, _SetRange{0, 0, 0}, //-1, 0},
[=](_DifferenceType __i, _DifferenceType __len) { // Reduce
//[__b; __e) - a subrange of the first sequence, to reduce
}
//------------------------------------------------------------------------
-// parallel_strict_scan
+// __parallel_strict_scan
//------------------------------------------------------------------------
template <typename _Index, typename _Tp, typename _Rp, typename _Cp>
// T must have a trivial constructor and destructor.
template <class _ExecutionPolicy, typename _Index, typename _Tp, typename _Rp, typename _Cp, typename _Sp, typename _Ap>
void
-parallel_strict_scan(_ExecutionPolicy&&, _Index __n, _Tp __initial, _Rp __reduce, _Cp __combine, _Sp __scan, _Ap __apex)
+__parallel_strict_scan(_ExecutionPolicy&&, _Index __n, _Tp __initial, _Rp __reduce, _Cp __combine, _Sp __scan,
+ _Ap __apex)
{
tbb::this_task_arena::isolate([=, &__combine]() {
if (__n > 1)