21 using type = std::tuple<T>;
24 template <
typename... Ts>
27 template <
typename T,
typename RemainingTuple>
31 template <
typename T,
typename... Ts>
34 constexpr
static bool t_not_void = !std::is_same_v<T, void>;
35 using adding_t_type = std::conditional_t<t_not_void, std::tuple<T>, std::tuple<>>;
40 template <
typename T,
typename... Ts>
47 template <
typename... Ts>