Skip to content

Commit 63939cb

Browse files
committed
Revert "[oneDPL][ranges][zip_view] + alias __iterators_type unification"
This reverts commit 2d746c4.
1 parent cf07622 commit 63939cb

File tree

1 file changed

+12
-9
lines changed

1 file changed

+12
-9
lines changed

include/oneapi/dpl/pstl/zip_view_impl.h

+12-9
Original file line numberDiff line numberDiff line change
@@ -70,9 +70,6 @@ concept __simple_view = std::ranges::view<_R> && std::ranges::range<const _R> &&
7070
std::same_as<std::ranges::iterator_t<_R>, std::ranges::iterator_t<const _R>> &&
7171
std::same_as<std::ranges::sentinel_t<_R>, std::ranges::sentinel_t<const _R>>;
7272

73-
template <bool _Const, typename... _Views>
74-
using __iterators_type = __tuple_type<std::ranges::iterator_t<__internal::__maybe_const<_Const, _Views>>...>;
75-
7673
template <typename _ReturnAdapter, typename _F, typename _Tuple, std::size_t... _Ip>
7774
static decltype(auto)
7875
__apply_to_tuple_impl(_ReturnAdapter __tr, _F __f, _Tuple& __t, std::index_sequence<_Ip...>)
@@ -137,6 +134,8 @@ class zip_view : public std::ranges::view_interface<zip_view<_Views...>>
137134
using __rvalue_reference_type =
138135
__tuple_type<std::ranges::range_rvalue_reference_t<__internal::__maybe_const<_Const, _Views>>...>;
139136

137+
using __iterators_type = __tuple_type<std::ranges::iterator_t<__internal::__maybe_const<_Const, _Views>>...>;
138+
140139
public:
141140
iterator() = default;
142141
constexpr iterator(iterator<!_Const> i)
@@ -149,7 +148,7 @@ class zip_view : public std::ranges::view_interface<zip_view<_Views...>>
149148
}
150149

151150
private:
152-
constexpr explicit iterator(__internal::__iterators_type<_Const, _Views...> __current) : __current(std::move(__current)) {}
151+
constexpr explicit iterator(__iterators_type __current) : __current(std::move(__current)) {}
153152

154153
public:
155154
template <typename... Iterators>
@@ -337,7 +336,7 @@ class zip_view : public std::ranges::view_interface<zip_view<_Views...>>
337336

338337
friend class zip_view;
339338

340-
__internal::__iterators_type<_Const, _Views...> __current;
339+
__iterators_type __current;
341340
}; // class iterator
342341

343342
template <bool _Const>
@@ -407,8 +406,9 @@ class zip_view : public std::ranges::view_interface<zip_view<_Views...>>
407406
begin()
408407
requires(!(__internal::__simple_view<_Views> && ...))
409408
{
409+
using __iterators_type = __tuple_type<std::ranges::iterator_t<__internal::__maybe_const<false, _Views>>...>;
410410
auto __tr = [](auto&&... __args) {
411-
return iterator<false>(__internal::__iterators_type<false, _Views...>(std::forward<decltype(__args)>(__args)...));
411+
return iterator<false>(__iterators_type(std::forward<decltype(__args)>(__args)...));
412412
};
413413
return __internal::__apply_to_tuple(std::ranges::begin, __views, __tr);
414414
}
@@ -417,8 +417,9 @@ class zip_view : public std::ranges::view_interface<zip_view<_Views...>>
417417
begin() const
418418
requires(std::ranges::range<const _Views> && ...)
419419
{
420+
using __iterators_type = __tuple_type<std::ranges::iterator_t<__internal::__maybe_const<true, _Views>>...>;
420421
auto __tr = [](auto&&... __args) {
421-
return iterator<true>(__internal::__iterators_type<true, _Views...>(std::forward<decltype(__args)>(__args)...));
422+
return iterator<true>(__iterators_type(std::forward<decltype(__args)>(__args)...));
422423
};
423424
return __internal::__apply_to_tuple(std::ranges::begin, __views, __tr);
424425
}
@@ -440,8 +441,9 @@ class zip_view : public std::ranges::view_interface<zip_view<_Views...>>
440441
}
441442
else
442443
{
444+
using __iterators_type = __tuple_type<std::ranges::iterator_t<__internal::__maybe_const<false, _Views>>...>;
443445
auto __tr = [](auto&&... __args) {
444-
return iterator<false>(__internal::__iterators_type<false, _Views...>(std::forward<decltype(__args)>(__args)...));
446+
return iterator<false>(__iterators_type(std::forward<decltype(__args)>(__args)...));
445447
};
446448
return __internal::__apply_to_tuple(std::ranges::end, __views, __tr);
447449
}
@@ -464,7 +466,8 @@ class zip_view : public std::ranges::view_interface<zip_view<_Views...>>
464466
}
465467
else
466468
{
467-
auto __tr = [](auto&&... __args) { return iterator<true>(__internal::__iterators_type<true, _Views...>(__args...)); };
469+
using __iterators_type = __tuple_type<std::ranges::iterator_t<__internal::__maybe_const<true, _Views>>...>;
470+
auto __tr = [](auto&&... __args) { return iterator<true>(__iterators_type(__args...)); };
468471
return __internal::__apply_to_tuple(std::ranges::end, __views, __tr);
469472
}
470473
}

0 commit comments

Comments
 (0)