52 template <
typename ClassType,
typename T>
53 struct FunctionTraits<T ClassType::*> :
public FunctionTraits<T> {};
56 template <
typename ClassType,
typename ReturnType,
typename... Args>
57 struct FunctionTraits<ReturnType (ClassType::*)(Args...) const>
58 :
public FunctionTraits<ReturnType(Args...)> {};
62 struct FunctionTraits<T&> :
public FunctionTraits<T> {};
64 struct FunctionTraits<T*> :
public FunctionTraits<T> {};
67 template <
typename ReturnType,
typename... Args>
68 struct FunctionTraits<ReturnType(Args...)> {
70 enum { arity =
sizeof...(Args) };
77 typedef typename std::tuple_element<i, std::tuple<Args...>>
::type type;
86 using res_t =
typename traits::result_type;
92 using res_t =
typename traits::result_type;
99 using res_t =
typename traits::result_type;
std::tuple< Args... > ArgsTuple
Definition: FunctionTraits.h:72
FunctionTraits< T > traits
Definition: FunctionTraits.h:98
FunctionTraits< T > traits
Definition: FunctionTraits.h:85
Definition: FunctionTraits.h:35
std::tuple_element< i, std::tuple< Args... > >::type type
Definition: FunctionTraits.h:77
FunctionTraits< T > traits
Definition: FunctionTraits.h:91
typename traits::result_type res_t
Definition: FunctionTraits.h:92
typename traits::result_type res_t
Definition: FunctionTraits.h:86
typename traits::result_type res_t
Definition: FunctionTraits.h:99
Definition: FunctionTraits.h:97
Definition: FunctionTraits.h:90
Definition: PinholeCameraIntrinsic.cpp:35
ReturnType result_type
Definition: FunctionTraits.h:73
typename traits::template arg< 0 >::type arg0_t
Definition: FunctionTraits.h:93
Definition: FunctionTraits.h:84
typename traits::template arg< 0 >::type arg0_t
Definition: FunctionTraits.h:100
typename traits::template arg< 1 >::type arg1_t
Definition: FunctionTraits.h:101