23template<
typename Indices,
typename... Types>
27 template<
types::size_t index,
typename Indices,
typename... Types>
31 struct TupleImplBase<0,
meta::ListV<indices...>, Types...> {
37 requires(index_to_find != 0)
39 : TupleImplBase<index_to_find - 1,
meta::ListV<indices...>, Rest...> {};
56 template<
typename Arg,
typename... Args>
60 template<concepts::TupleLike Tup>
67 , m_value(
util::
get<index>(
util::forward<Tup>(tuple))) {}
76 template<concepts::DecaySameAs<TupleImpl> Self>
81 template<concepts::DecaySameAs<TupleImpl> Self, concepts::TupleLike Tup>
92 template<
typename Self,
typename Tup>
114 template<concepts::TupleLike T>
122 template<concepts::DecaySameAs<TupleImpl> Self, concepts::TupleLike Tup>
127 template<
typename Self,
typename Tup>
Definition tuple_impl.h:24
#define DI_IMMOVABLE_NO_UNIQUE_ADDRESS
Definition compiler.h:15
Definition operations.h:19
Definition operations.h:11
Definition operations.h:24
std::size_t size_t
Definition size_t.h:12
constexpr auto get(T &&value) -> decltype(auto)
Definition get.h:8
constexpr auto forward_as_base(meta::RemoveReference< Derived > &derived) -> meta::Like< meta::RemoveReference< Derived > &, Base > &&
Definition forward_as_base.h:12
constexpr auto construct_tuple_impl_from_tuplelike
Definition tuple_impl.h:21
constexpr auto construct_tuple_impl_valuewise
Definition tuple_impl.h:17
constexpr auto get(T &&value) -> decltype(auto)
Definition get.h:8
Definition tuple_impl.h:19
Definition tuple_impl.h:15