Advertisement
Guest User

Untitled

a guest
May 23rd, 2018
63
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 0.52 KB | None | 0 0
  1. template <typename T, typename TupleType>
  2. decltype(auto) get(TupleType&& tuple, std::enable_if_t<!std::is_same<__first_tuple_t<TupleType>, T>::value, char> c = ' ') {
  3.     return std::forward<decltype(
  4.     get<T>(std::forward<decltype(tuple.__tail)>(tuple.__tail)
  5.     ))>(get<T>(std::forward<decltype(tuple.__tail)>(tuple.__tail)));
  6. }
  7.  
  8. template <size_t i, typename TupleType, typename = std::enable_if_t<i == 0, char>>
  9. decltype(auto) get(TupleType&& tuple) {
  10.     return std::forward<decltype(tuple.__head)>(tuple.__head);
  11. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement