Lines Matching full:args
42 template <typename R, typename... Args>
43 class callable<R(Args...)> {
45 R operator()(Args...);
47 typedef R (callable_type::*method_type)(Args...);
48 typedef R (*function_type)(Args...);
61 using Arguments = std::tuple<Args...>;
70 template <typename T, typename = decltype(static_cast<R (T::*)(Args...) const>(&T::operator()))>
73 … method {reinterpret_cast<method_type>(static_cast<R (T::*)(Args...) const>(&T::operator()))}
77 template <typename T, typename = decltype(static_cast<R (T::*)(Args...)>(&T::operator()))>
80 method {reinterpret_cast<method_type>(static_cast<R (T::*)(Args...)>(&T::operator()))}
85 constexpr callable(const T &obj, R (T::*param_method)(Args...) const) in callable()
92 constexpr callable(T &obj, R (T::*param_method)(Args...)) in callable() argument
100 constexpr R operator()(Args... args) const in operator()
103 return (method.f)(args...); in operator()
105 return (object->*(method.m))(args...); in operator()