Lines Matching refs:template
30 template <class _Tp> class _LIBCPP_TYPE_VIS_ONLY tuple_size;
32 template <class _Tp>
36 template <class _Tp>
40 template <class _Tp>
44 template <size_t _Ip, class _Tp> class _LIBCPP_TYPE_VIS_ONLY tuple_element;
46 template <size_t _Ip, class _Tp>
53 template <size_t _Ip, class _Tp>
60 template <size_t _Ip, class _Tp>
67 template <class ..._Tp> class _LIBCPP_TYPE_VIS_ONLY tuple;
68 template <class _T1, class _T2> struct _LIBCPP_TYPE_VIS_ONLY pair;
69 template <class _Tp, size_t _Size> struct _LIBCPP_TYPE_VIS_ONLY array;
71 template <class _Tp> struct __tuple_like : false_type {};
73 template <class _Tp> struct __tuple_like<const _Tp> : public __tuple_like<_Tp> {};
74 template <class _Tp> struct __tuple_like<volatile _Tp> : public __tuple_like<_Tp> {};
75 template <class _Tp> struct __tuple_like<const volatile _Tp> : public __tuple_like<_Tp> {};
77 template <class... _Tp> struct __tuple_like<tuple<_Tp...> > : true_type {};
78 template <class _T1, class _T2> struct __tuple_like<pair<_T1, _T2> > : true_type {};
79 template <class _Tp, size_t _Size> struct __tuple_like<array<_Tp, _Size> > : true_type {};
81 template <size_t _Ip, class ..._Tp>
86 template <size_t _Ip, class ..._Tp>
91 template <size_t _Ip, class ..._Tp>
96 template <size_t _Ip, class _T1, class _T2>
101 template <size_t _Ip, class _T1, class _T2>
106 template <size_t _Ip, class _T1, class _T2>
111 template <size_t _Ip, class _Tp, size_t _Size>
116 template <size_t _Ip, class _Tp, size_t _Size>
121 template <size_t _Ip, class _Tp, size_t _Size>
128 template <size_t...> struct __tuple_indices {};
130 template <size_t _Sp, class _IntTuple, size_t _Ep>
133 template <size_t _Sp, size_t ..._Indices, size_t _Ep>
139 template <size_t _Ep, size_t ..._Indices>
145 template <size_t _Ep, size_t _Sp = 0>
154 template <class ..._Tp> struct __tuple_types {};
156 template <size_t _Ip>
164 template <class _Hp, class ..._Tp>
171 template <size_t _Ip, class _Hp, class ..._Tp>
178 template <class ..._Tp>
184 template <class... _Tp> struct __tuple_like<__tuple_types<_Tp...> > : true_type {};
193 template <class _TupleTypes, class _Tp, size_t _Sp, size_t _Ep>
196 template <class ..._Types, class _Tp, size_t _Sp, size_t _Ep>
207 template <class ..._Types, class _Tp, size_t _Ep>
213 template <class _Tp, size_t _Ep = tuple_size<typename remove_reference<_Tp>::type>::value, size_t _…
222 template <bool, class _Tp, class _Up>
225 template <class _Tp0, class ..._Tp, class _Up0, class ..._Up>
231 template <>
235 template <class _Tp, class _Up, bool = __tuple_like<typename remove_reference<_Tp>::type>::value,
240 template <class _Tp, class _Up>
249 template <bool, class _Tp, class _Up>
252 template <class _Tp0, class ..._Tp, class _Up0, class ..._Up>
258 template <>
262 template <class _Tp, class _Up, bool = __tuple_like<typename remove_reference<_Tp>::type>::value,
267 template <class _Tp, class _Up>
276 template <bool, class _Tp, class _Up>
279 template <class _Tp0, class ..._Tp, class _Up0, class ..._Up>
285 template <>
289 template <class _Tp, class _Up, bool = __tuple_like<typename remove_reference<_Tp>::type>::value,
294 template <class _Tp, class _Up>