Lines Matching full:args
235 : f(f), bound_args(bound_args...) { } template<typename... Args>
236 typename F::result_type operator()(Args&... args);
274 template<typename Bound, typename... Args>
276 tuple<Args...> >::type
277 mu(Bound& bound_arg, const tuple<Args&...>& args) {
278 return get<is_placeholder<Bound>::value-1>(args);
281 template<typename T, typename... Args>
282 inline T& mu(reference_wrapper<T>& bound_arg, const tuple<Args&...>&) {
286 template<typename F, int... Indexes, typename... Args>
288 unwrap_and_forward(F& f, int_tuple<Indexes...>, const tuple<Args&...>& args) {
289 return f(get<Indexes>(args)...);
292 template<typename Bound, typename... Args>
295 mu(Bound& bound_arg, const tuple<Args&...>& args) {
296 typedef typename make_indexes<Args...>::type Indexes;
297 return unwrap_and_forward(bound_arg, Indexes(), args);
310 template<typename Bound, typename... Args>
315 mu(Bound& bound_arg, const tuple<Args&...>&) {
319 template<typename F, typename... BoundArgs, int... Indexes, typename... Args>
322 const tuple<Args&...>& args) {
323 return f(mu(get<Indexes>(bound_args), args)...);
327 template<typename... Args>
328 typename F::result_type bound_functor<F, BoundArgs...>::operator()(Args&... args) {
329 return apply_functor(f, bound_args, indexes(), tie(args...));