Home | History | Annotate | Download | only in util

Lines Matching refs:Func

300 template<typename Func, typename ArgType, int SizeOf=sizeof(has_none)>
303 template<typename Func, typename ArgType>
304 struct unary_result_of_select<Func, ArgType, sizeof(has_std_result_type)> {typedef typename Func::result_type type;};
306 template<typename Func, typename ArgType>
307 struct unary_result_of_select<Func, ArgType, sizeof(has_tr1_result)> {typedef typename Func::template result<Func(ArgType)>::type type;};
309 template<typename Func, typename ArgType>
310 struct result_of<Func(ArgType)> {
318 enum {FunctorType = sizeof(testFunctor(static_cast<Func*>(0)))};
319 typedef typename unary_result_of_select<Func, ArgType, FunctorType>::type type;
322 template<typename Func, typename ArgType0, typename ArgType1, int SizeOf=sizeof(has_none)>
325 template<typename Func, typename ArgType0, typename ArgType1>
326 struct binary_result_of_select<Func, ArgType0, ArgType1, sizeof(has_std_result_type)>
327 {typedef typename Func::result_type type;};
329 template<typename Func, typename ArgType0, typename ArgType1>
330 struct binary_result_of_select<Func, ArgType0, ArgType1, sizeof(has_tr1_result)>
331 {typedef typename Func::template result<Func(ArgType0,ArgType1)>::type type;};
333 template<typename Func, typename ArgType0, typename ArgType1>
334 struct result_of<Func(ArgType0,ArgType1)> {
342 enum {FunctorType = sizeof(testFunctor(static_cast<Func*>(0)))};
343 typedef typename binary_result_of_select<Func, ArgType0, ArgType1, FunctorType>::type type;
346 template<typename Func, typename ArgType0, typename ArgType1, typename ArgType2, int SizeOf=sizeof(has_none)>
349 template<typename Func, typename ArgType0, typename ArgType1, typename ArgType2>
350 struct ternary_result_of_select<Func, ArgType0, ArgType1, ArgType2, sizeof(has_std_result_type)>
351 {typedef typename Func::result_type type;};
353 template<typename Func, typename ArgType0, typename ArgType1, typename ArgType2>
354 struct ternary_result_of_select<Func, ArgType0, ArgType1, ArgType2, sizeof(has_tr1_result)>
355 {typedef typename Func::template result<Func(ArgType0,ArgType1,ArgType2)>::type type;};
357 template<typename Func, typename ArgType0, typename ArgType1, typename ArgType2>
358 struct result_of<Func(ArgType0,ArgType1,ArgType2)> {
366 enum {FunctorType = sizeof(testFunctor(static_cast<Func*>(0)))};
367 typedef typename ternary_result_of_select<Func, ArgType0, ArgType1, ArgType2, FunctorType>::type type;