Lines Matching refs:Head
58 template<typename Head, typename... Tail>
59 class tuple<Head, Tail...> : private tuple<Tail...> {
67 tuple(typename add_const_reference<Head>::type v, in tuple()
82 typename add_reference<Head>::type head() { return m_head; } in head()
83 typename add_reference<const Head>::type head() const { return m_head; } in head()
88 Head m_head;
156 template<int I, typename Head, typename... Tail>
157 struct tuple_element<I, tuple<Head, Tail...> > {
161 template<typename Head, typename... Tail>
162 struct tuple_element<0, tuple<Head, Tail...> > {
163 typedef Head type;
177 template<int I, typename Head, typename... Values>
178 class get_impl<I, tuple<Head, Values...> > {
184 static RJ get(tuple<Head, Values...>& t) { return Next::get(t.tail()); } in get() argument
185 static PJ get(const tuple<Head, Values...>& t) { return Next::get(t.tail()); } in get() argument
188 template<typename Head, typename... Values>
189 class get_impl<0, tuple<Head, Values...> > {
190 typedef typename add_reference<Head>::type RJ;
191 typedef typename add_const_reference<Head>::type PJ;
193 static RJ get(tuple<Head, Values...>& t) { return t.head(); } in get() argument
194 static PJ get(const tuple<Head, Values...>& t) { return t.head(); } in get() argument