Skip to content

Commit 18cebdf

Browse files
authored
Remove __tuple_element_t (NVIDIA#4501)
1 parent e730649 commit 18cebdf

File tree

7 files changed

+38
-42
lines changed

7 files changed

+38
-42
lines changed

libcudacxx/include/cuda/std/__functional/bind.h

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -129,7 +129,7 @@ struct __mu_return2
129129
template <class _Ti, class _Uj>
130130
struct __mu_return2<true, _Ti, _Uj>
131131
{
132-
using type = __tuple_element_t<is_placeholder<_Ti>::value - 1, _Uj>;
132+
using type = tuple_element_t<is_placeholder<_Ti>::value - 1, _Uj>;
133133
};
134134

135135
template <class _Ti, class _Uj>
@@ -138,7 +138,7 @@ enable_if_t<0 < is_placeholder<_Ti>::value, typename __mu_return2<0 < is_placeho
138138
__mu(_Ti&, _Uj& __uj)
139139
{
140140
const size_t _Indx = is_placeholder<_Ti>::value - 1;
141-
return _CUDA_VSTD::forward<__tuple_element_t<_Indx, _Uj>>(_CUDA_VSTD::get<_Indx>(__uj));
141+
return _CUDA_VSTD::forward<tuple_element_t<_Indx, _Uj>>(_CUDA_VSTD::get<_Indx>(__uj));
142142
}
143143

144144
template <class _Ti, class _Uj>
@@ -173,7 +173,7 @@ struct __mu_return_impl<_Ti, false, true, false, tuple<_Uj...>>
173173
template <class _Ti, class _TupleUj>
174174
struct __mu_return_impl<_Ti, false, false, true, _TupleUj>
175175
{
176-
using type = __tuple_element_t<is_placeholder<_Ti>::value - 1, _TupleUj>&&;
176+
using type = tuple_element_t<is_placeholder<_Ti>::value - 1, _TupleUj>&&;
177177
};
178178

179179
template <class _Ti, class _TupleUj>

libcudacxx/include/cuda/std/__fwd/get.h

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -32,28 +32,28 @@
3232
_LIBCUDACXX_BEGIN_NAMESPACE_STD
3333

3434
template <size_t _Ip, class... _Tp>
35-
_LIBCUDACXX_HIDE_FROM_ABI constexpr __tuple_element_t<_Ip, tuple<_Tp...>>& get(tuple<_Tp...>&) noexcept;
35+
_LIBCUDACXX_HIDE_FROM_ABI constexpr tuple_element_t<_Ip, tuple<_Tp...>>& get(tuple<_Tp...>&) noexcept;
3636

3737
template <size_t _Ip, class... _Tp>
38-
_LIBCUDACXX_HIDE_FROM_ABI constexpr const __tuple_element_t<_Ip, tuple<_Tp...>>& get(const tuple<_Tp...>&) noexcept;
38+
_LIBCUDACXX_HIDE_FROM_ABI constexpr const tuple_element_t<_Ip, tuple<_Tp...>>& get(const tuple<_Tp...>&) noexcept;
3939

4040
template <size_t _Ip, class... _Tp>
41-
_LIBCUDACXX_HIDE_FROM_ABI constexpr __tuple_element_t<_Ip, tuple<_Tp...>>&& get(tuple<_Tp...>&&) noexcept;
41+
_LIBCUDACXX_HIDE_FROM_ABI constexpr tuple_element_t<_Ip, tuple<_Tp...>>&& get(tuple<_Tp...>&&) noexcept;
4242

4343
template <size_t _Ip, class... _Tp>
44-
_LIBCUDACXX_HIDE_FROM_ABI constexpr const __tuple_element_t<_Ip, tuple<_Tp...>>&& get(const tuple<_Tp...>&&) noexcept;
44+
_LIBCUDACXX_HIDE_FROM_ABI constexpr const tuple_element_t<_Ip, tuple<_Tp...>>&& get(const tuple<_Tp...>&&) noexcept;
4545

4646
template <size_t _Ip, class _T1, class _T2>
47-
_LIBCUDACXX_HIDE_FROM_ABI constexpr __tuple_element_t<_Ip, pair<_T1, _T2>>& get(pair<_T1, _T2>&) noexcept;
47+
_LIBCUDACXX_HIDE_FROM_ABI constexpr tuple_element_t<_Ip, pair<_T1, _T2>>& get(pair<_T1, _T2>&) noexcept;
4848

4949
template <size_t _Ip, class _T1, class _T2>
50-
_LIBCUDACXX_HIDE_FROM_ABI constexpr const __tuple_element_t<_Ip, pair<_T1, _T2>>& get(const pair<_T1, _T2>&) noexcept;
50+
_LIBCUDACXX_HIDE_FROM_ABI constexpr const tuple_element_t<_Ip, pair<_T1, _T2>>& get(const pair<_T1, _T2>&) noexcept;
5151

5252
template <size_t _Ip, class _T1, class _T2>
53-
_LIBCUDACXX_HIDE_FROM_ABI constexpr __tuple_element_t<_Ip, pair<_T1, _T2>>&& get(pair<_T1, _T2>&&) noexcept;
53+
_LIBCUDACXX_HIDE_FROM_ABI constexpr tuple_element_t<_Ip, pair<_T1, _T2>>&& get(pair<_T1, _T2>&&) noexcept;
5454

5555
template <size_t _Ip, class _T1, class _T2>
56-
_LIBCUDACXX_HIDE_FROM_ABI constexpr const __tuple_element_t<_Ip, pair<_T1, _T2>>&& get(const pair<_T1, _T2>&&) noexcept;
56+
_LIBCUDACXX_HIDE_FROM_ABI constexpr const tuple_element_t<_Ip, pair<_T1, _T2>>&& get(const pair<_T1, _T2>&&) noexcept;
5757

5858
template <size_t _Ip, class _Tp, size_t _Size>
5959
_LIBCUDACXX_HIDE_FROM_ABI constexpr _Tp& get(array<_Tp, _Size>&) noexcept;

libcudacxx/include/cuda/std/__mdspan/submdspan_helper.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ template <size_t _Index, class... _Slices>
118118
}
119119

120120
template <size_t _Index, class... _Slices>
121-
using __get_slice_type = __tuple_element_t<_Index, __tuple_types<_Slices...>>;
121+
using __get_slice_type = tuple_element_t<_Index, __tuple_types<_Slices...>>;
122122

123123
template <class _IndexType, size_t _Index, class... _Slices>
124124
[[nodiscard]] _LIBCUDACXX_HIDE_FROM_ABI constexpr _IndexType __first_extent_from_slice(_Slices... __slices) noexcept

libcudacxx/include/cuda/std/__tuple_dir/sfinae_helpers.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ struct __tuple_assignable<_Tp, _Up, true, true>
118118
template <size_t _Ip, class... _Tp>
119119
struct _CCCL_TYPE_VISIBILITY_DEFAULT tuple_element<_Ip, tuple<_Tp...>>
120120
{
121-
using type _CCCL_NODEBUG_ALIAS = __tuple_element_t<_Ip, __tuple_types<_Tp...>>;
121+
using type _CCCL_NODEBUG_ALIAS = tuple_element_t<_Ip, __tuple_types<_Tp...>>;
122122
};
123123

124124
template <bool _IsTuple, class _SizeTrait, size_t _Expected>

libcudacxx/include/cuda/std/__tuple_dir/tuple_element.h

Lines changed: 5 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -33,25 +33,25 @@ _LIBCUDACXX_BEGIN_NAMESPACE_STD
3333
template <size_t _Ip, class _Tp>
3434
struct _CCCL_TYPE_VISIBILITY_DEFAULT tuple_element;
3535

36-
template <size_t _Ip, class... _Tp>
37-
using __tuple_element_t _CCCL_NODEBUG_ALIAS = typename tuple_element<_Ip, _Tp...>::type;
36+
template <size_t _Ip, class _Tp>
37+
using tuple_element_t _CCCL_NODEBUG_ALIAS = typename tuple_element<_Ip, _Tp>::type;
3838

3939
template <size_t _Ip, class _Tp>
4040
struct _CCCL_TYPE_VISIBILITY_DEFAULT tuple_element<_Ip, const _Tp>
4141
{
42-
using type _CCCL_NODEBUG_ALIAS = typename add_const<__tuple_element_t<_Ip, _Tp>>::type;
42+
using type _CCCL_NODEBUG_ALIAS = const tuple_element_t<_Ip, _Tp>;
4343
};
4444

4545
template <size_t _Ip, class _Tp>
4646
struct _CCCL_TYPE_VISIBILITY_DEFAULT tuple_element<_Ip, volatile _Tp>
4747
{
48-
using type _CCCL_NODEBUG_ALIAS = typename add_volatile<__tuple_element_t<_Ip, _Tp>>::type;
48+
using type _CCCL_NODEBUG_ALIAS = volatile tuple_element_t<_Ip, _Tp>;
4949
};
5050

5151
template <size_t _Ip, class _Tp>
5252
struct _CCCL_TYPE_VISIBILITY_DEFAULT tuple_element<_Ip, const volatile _Tp>
5353
{
54-
using type _CCCL_NODEBUG_ALIAS = typename add_cv<__tuple_element_t<_Ip, _Tp>>::type;
54+
using type _CCCL_NODEBUG_ALIAS = const volatile tuple_element_t<_Ip, _Tp>;
5555
};
5656

5757
template <size_t _Ip, class... _Types>
@@ -61,9 +61,6 @@ struct _CCCL_TYPE_VISIBILITY_DEFAULT tuple_element<_Ip, __tuple_types<_Types...>
6161
using type _CCCL_NODEBUG_ALIAS = __type_index_c<_Ip, _Types...>;
6262
};
6363

64-
template <size_t _Ip, class... _Tp>
65-
using tuple_element_t _CCCL_NODEBUG_ALIAS = typename tuple_element<_Ip, _Tp...>::type;
66-
6764
_LIBCUDACXX_END_NAMESPACE_STD
6865

6966
#endif // _LIBCUDACXX___TUPLE_TUPLE_ELEMENT_H

libcudacxx/include/cuda/std/__utility/pair.h

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -728,26 +728,25 @@ struct __get_pair<1>
728728
};
729729

730730
template <size_t _Ip, class _T1, class _T2>
731-
_LIBCUDACXX_HIDE_FROM_ABI constexpr __tuple_element_t<_Ip, pair<_T1, _T2>>& get(pair<_T1, _T2>& __p) noexcept
731+
_LIBCUDACXX_HIDE_FROM_ABI constexpr tuple_element_t<_Ip, pair<_T1, _T2>>& get(pair<_T1, _T2>& __p) noexcept
732732
{
733733
return __get_pair<_Ip>::get(__p);
734734
}
735735

736736
template <size_t _Ip, class _T1, class _T2>
737-
_LIBCUDACXX_HIDE_FROM_ABI constexpr const __tuple_element_t<_Ip, pair<_T1, _T2>>& get(const pair<_T1, _T2>& __p) noexcept
737+
_LIBCUDACXX_HIDE_FROM_ABI constexpr const tuple_element_t<_Ip, pair<_T1, _T2>>& get(const pair<_T1, _T2>& __p) noexcept
738738
{
739739
return __get_pair<_Ip>::get(__p);
740740
}
741741

742742
template <size_t _Ip, class _T1, class _T2>
743-
_LIBCUDACXX_HIDE_FROM_ABI constexpr __tuple_element_t<_Ip, pair<_T1, _T2>>&& get(pair<_T1, _T2>&& __p) noexcept
743+
_LIBCUDACXX_HIDE_FROM_ABI constexpr tuple_element_t<_Ip, pair<_T1, _T2>>&& get(pair<_T1, _T2>&& __p) noexcept
744744
{
745745
return __get_pair<_Ip>::get(_CUDA_VSTD::move(__p));
746746
}
747747

748748
template <size_t _Ip, class _T1, class _T2>
749-
_LIBCUDACXX_HIDE_FROM_ABI constexpr const __tuple_element_t<_Ip, pair<_T1, _T2>>&&
750-
get(const pair<_T1, _T2>&& __p) noexcept
749+
_LIBCUDACXX_HIDE_FROM_ABI constexpr const tuple_element_t<_Ip, pair<_T1, _T2>>&& get(const pair<_T1, _T2>&& __p) noexcept
751750
{
752751
return __get_pair<_Ip>::get(_CUDA_VSTD::move(__p));
753752
}

libcudacxx/include/cuda/std/detail/libcxx/include/tuple

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -576,7 +576,7 @@ struct _CCCL_DECLSPEC_EMPTY_BASES __tuple_impl<__tuple_indices<_Indx...>, _Tp...
576576
{}
577577

578578
template <class _Tuple, size_t _Indx2>
579-
using __tuple_elem_at = __tuple_element_t<_Indx2, __make_tuple_types_t<_Tuple>>;
579+
using __tuple_elem_at = tuple_element_t<_Indx2, __make_tuple_types_t<_Tuple>>;
580580

581581
template <class _Tuple, enable_if_t<__tuple_constructible<_Tuple, tuple<_Tp...>>::value, int> = 0>
582582
_LIBCUDACXX_HIDE_FROM_ABI constexpr __tuple_impl(_Tuple&& __t) noexcept(
@@ -736,30 +736,30 @@ class _CCCL_TYPE_VISIBILITY_DEFAULT tuple
736736

737737
public:
738738
template <size_t _Ip>
739-
_LIBCUDACXX_HIDE_FROM_ABI constexpr __tuple_element_t<_Ip, tuple>& __get_impl() & noexcept
739+
_LIBCUDACXX_HIDE_FROM_ABI constexpr tuple_element_t<_Ip, tuple>& __get_impl() & noexcept
740740
{
741-
using type _CCCL_NODEBUG_ALIAS = __tuple_element_t<_Ip, tuple>;
741+
using type _CCCL_NODEBUG_ALIAS = tuple_element_t<_Ip, tuple>;
742742
return static_cast<__tuple_leaf<_Ip, type>&>(__base_).get();
743743
}
744744

745745
template <size_t _Ip>
746-
_LIBCUDACXX_HIDE_FROM_ABI constexpr const __tuple_element_t<_Ip, tuple>& __get_impl() const& noexcept
746+
_LIBCUDACXX_HIDE_FROM_ABI constexpr const tuple_element_t<_Ip, tuple>& __get_impl() const& noexcept
747747
{
748-
using type _CCCL_NODEBUG_ALIAS = __tuple_element_t<_Ip, tuple>;
748+
using type _CCCL_NODEBUG_ALIAS = tuple_element_t<_Ip, tuple>;
749749
return static_cast<const __tuple_leaf<_Ip, type>&>(__base_).get();
750750
}
751751

752752
template <size_t _Ip>
753-
_LIBCUDACXX_HIDE_FROM_ABI constexpr __tuple_element_t<_Ip, tuple>&& __get_impl() && noexcept
753+
_LIBCUDACXX_HIDE_FROM_ABI constexpr tuple_element_t<_Ip, tuple>&& __get_impl() && noexcept
754754
{
755-
using type _CCCL_NODEBUG_ALIAS = __tuple_element_t<_Ip, tuple>;
755+
using type _CCCL_NODEBUG_ALIAS = tuple_element_t<_Ip, tuple>;
756756
return static_cast<type&&>(static_cast<__tuple_leaf<_Ip, type>&&>(__base_).get());
757757
}
758758

759759
template <size_t _Ip>
760-
_LIBCUDACXX_HIDE_FROM_ABI constexpr const __tuple_element_t<_Ip, tuple>&& __get_impl() const&& noexcept
760+
_LIBCUDACXX_HIDE_FROM_ABI constexpr const tuple_element_t<_Ip, tuple>&& __get_impl() const&& noexcept
761761
{
762-
using type _CCCL_NODEBUG_ALIAS = __tuple_element_t<_Ip, tuple>;
762+
using type _CCCL_NODEBUG_ALIAS = tuple_element_t<_Ip, tuple>;
763763
return static_cast<const type&&>(static_cast<const __tuple_leaf<_Ip, type>&&>(__base_).get());
764764
}
765765

@@ -1014,25 +1014,25 @@ swap(tuple<_Tp...>& __t, tuple<_Tp...>& __u) noexcept(__all<__is_nothrow_swappab
10141014

10151015
// get
10161016
template <size_t _Ip, class... _Tp>
1017-
_LIBCUDACXX_HIDE_FROM_ABI constexpr __tuple_element_t<_Ip, tuple<_Tp...>>& get(tuple<_Tp...>& __t) noexcept
1017+
_LIBCUDACXX_HIDE_FROM_ABI constexpr tuple_element_t<_Ip, tuple<_Tp...>>& get(tuple<_Tp...>& __t) noexcept
10181018
{
10191019
return __t.template __get_impl<_Ip>();
10201020
}
10211021

10221022
template <size_t _Ip, class... _Tp>
1023-
_LIBCUDACXX_HIDE_FROM_ABI constexpr const __tuple_element_t<_Ip, tuple<_Tp...>>& get(const tuple<_Tp...>& __t) noexcept
1023+
_LIBCUDACXX_HIDE_FROM_ABI constexpr const tuple_element_t<_Ip, tuple<_Tp...>>& get(const tuple<_Tp...>& __t) noexcept
10241024
{
10251025
return __t.template __get_impl<_Ip>();
10261026
}
10271027

10281028
template <size_t _Ip, class... _Tp>
1029-
_LIBCUDACXX_HIDE_FROM_ABI constexpr __tuple_element_t<_Ip, tuple<_Tp...>>&& get(tuple<_Tp...>&& __t) noexcept
1029+
_LIBCUDACXX_HIDE_FROM_ABI constexpr tuple_element_t<_Ip, tuple<_Tp...>>&& get(tuple<_Tp...>&& __t) noexcept
10301030
{
10311031
return _CUDA_VSTD::move(__t).template __get_impl<_Ip>();
10321032
}
10331033

10341034
template <size_t _Ip, class... _Tp>
1035-
_LIBCUDACXX_HIDE_FROM_ABI constexpr const __tuple_element_t<_Ip, tuple<_Tp...>>&& get(const tuple<_Tp...>&& __t) noexcept
1035+
_LIBCUDACXX_HIDE_FROM_ABI constexpr const tuple_element_t<_Ip, tuple<_Tp...>>&& get(const tuple<_Tp...>&& __t) noexcept
10361036
{
10371037
return _CUDA_VSTD::move(__t).template __get_impl<_Ip>();
10381038
}
@@ -1265,13 +1265,13 @@ template <class... _Types, size_t... _I0, class _Tuple0>
12651265
struct __tuple_cat_return_ref_imp<tuple<_Types...>, __tuple_indices<_I0...>, _Tuple0>
12661266
{
12671267
using _T0 _CCCL_NODEBUG_ALIAS = remove_reference_t<_Tuple0>;
1268-
using type = tuple<_Types..., __copy_cvref_t<_Tuple0, __tuple_element_t<_I0, _T0>>&&...>;
1268+
using type = tuple<_Types..., __copy_cvref_t<_Tuple0, tuple_element_t<_I0, _T0>>&&...>;
12691269
};
12701270

12711271
template <class... _Types, size_t... _I0, class _Tuple0, class _Tuple1, class... _Tuples>
12721272
struct __tuple_cat_return_ref_imp<tuple<_Types...>, __tuple_indices<_I0...>, _Tuple0, _Tuple1, _Tuples...>
12731273
: public __tuple_cat_return_ref_imp<
1274-
tuple<_Types..., __copy_cvref_t<_Tuple0, __tuple_element_t<_I0, remove_reference_t<_Tuple0>>>&&...>,
1274+
tuple<_Types..., __copy_cvref_t<_Tuple0, tuple_element_t<_I0, remove_reference_t<_Tuple0>>>&&...>,
12751275
__make_tuple_indices_t<tuple_size<remove_reference_t<_Tuple1>>::value>,
12761276
_Tuple1,
12771277
_Tuples...>
@@ -1306,7 +1306,7 @@ struct __tuple_cat<tuple<_Types...>, __tuple_indices<_I0...>, __tuple_indices<_J
13061306
{
13071307
using _T0 _CCCL_NODEBUG_ALIAS = remove_reference_t<_Tuple0>;
13081308
using _T1 _CCCL_NODEBUG_ALIAS = remove_reference_t<_Tuple1>;
1309-
return __tuple_cat<tuple<_Types..., __copy_cvref_t<_Tuple0, __tuple_element_t<_J0, _T0>>&&...>,
1309+
return __tuple_cat<tuple<_Types..., __copy_cvref_t<_Tuple0, tuple_element_t<_J0, _T0>>&&...>,
13101310
__make_tuple_indices_t<sizeof...(_Types) + tuple_size<_T0>::value>,
13111311
__make_tuple_indices_t<tuple_size<_T1>::value>>()(
13121312
_CUDA_VSTD::forward_as_tuple(_CUDA_VSTD::forward<_Types>(_CUDA_VSTD::get<_I0>(__t))...,

0 commit comments

Comments
 (0)