7 #ifndef ALPSCORE_TUPLE_TRAITS_HPP 8 #define ALPSCORE_TUPLE_TRAITS_HPP 15 template <
size_t Cut,
typename... T,
size_t... I>
16 auto tuple_tail_(
const std::tuple < T... > &t, index_sequence < I... > s) ->
DECLTYPE(std::make_tuple(std::get<Cut + I>(t)...));
21 template <
size_t Trim,
size_t Count,
typename T>
22 auto tuple_tail(T &t) ->
DECLTYPE(tuple_tail_<Trim>(t, make_index_sequence<Count - Trim>()));
25 template <
size_t Trim,
typename... T>
29 #endif //ALPSCORE_TUPLE_TRAITS_HPP
make_integer_sequence< size_t, N > make_index_sequence
auto tuple_tail(T &t) -> DECLTYPE(tuple_tail_< Trim >(t, make_index_sequence< Count-Trim >()))
auto tuple_tail_(const std::tuple< T... > &t, index_sequence< I... > s) -> DECLTYPE(std::make_tuple(std::get< Cut+I >(t)...))