10template<
typename... Ts>
struct tuple;
17template<
typename Head,
typename... Tail>
29 template<
typename H = Head,
typename... T,
39template<
typename... Ts>
42 enum :
size_t {
value =
sizeof...(Ts) };
50template<
size_t I,
typename Tuple>
53template<
typename Head,
typename... Tail>
58template<
size_t I,
typename Head,
typename... Tail>
63template<
size_t I,
typename Head,
typename... Tail>
69template<
size_t I,
typename Head,
typename... Tail>
70typename enable_if<I != 0,
typename tuple_element<I, tuple<Head, Tail...>>::type&>::type
72 return get<I-1>(
t.tail);
76template<
size_t I,
typename Head,
typename... Tail>
77typename enable_if<I == 0, const Head&>::type
82template<
size_t I,
typename Head,
typename... Tail>
83typename enable_if<I != 0,
const typename tuple_element<I, tuple<Head, Tail...>>::type&>::type
85 return get<I-1>(
t.tail);
89template<
size_t I,
typename Head,
typename... Tail>
90typename enable_if<I == 0, Head&&>::type
95template<
size_t I,
typename Head,
typename... Tail>
96typename enable_if<I != 0,
typename tuple_element<I, tuple<Head, Tail...>>::type&&>::type
102template<
typename... Ts>
103tuple<typename fl::decay<Ts>::type...>
constexpr T && forward(typename remove_reference< T >::type &t) FL_NOEXCEPT
constexpr remove_reference< T >::type && move(T &&t) FL_NOEXCEPT
tuple< typename fl::decay< Ts >::type... > make_tuple(Ts &&... args) FL_NOEXCEPT
pair_element< I, T1, T2 >::type & get(pair< T1, T2 > &p) FL_NOEXCEPT
Base definition for an LED controller.
tuple(const Head &h, const Tail &... t) FL_NOEXCEPT
tuple(H &&h, T &&... t) FL_NOEXCEPT
constexpr value_type operator()() const FL_NOEXCEPT