Lines Matching refs:Args
236 : f(f), bound_args(bound_args...) { } template<typename... Args>
237 typename F::result_type operator()(Args&... args);
275 template<typename Bound, typename... Args>
277 tuple<Args...> >::type
278 mu(Bound& bound_arg, const tuple<Args&...>& args) {
279 return get<is_placeholder<Bound>::value-1>(args);
282 template<typename T, typename... Args>
283 inline T& mu(reference_wrapper<T>& bound_arg, const tuple<Args&...>&) {
287 template<typename F, int... Indexes, typename... Args>
289 unwrap_and_forward(F& f, int_tuple<Indexes...>, const tuple<Args&...>& args) {
290 return f(get<Indexes>(args)...);
293 template<typename Bound, typename... Args>
296 mu(Bound& bound_arg, const tuple<Args&...>& args) {
297 typedef typename make_indexes<Args...>::type Indexes;
298 return unwrap_and_forward(bound_arg, Indexes(), args);
311 template<typename Bound, typename... Args>
316 mu(Bound& bound_arg, const tuple<Args&...>&) {
320 template<typename F, typename... BoundArgs, int... Indexes, typename... Args>
323 const tuple<Args&...>& args) {
324 return f(mu(get<Indexes>(bound_args), args)...);
328 template<typename... Args>
329 typename F::result_type bound_functor<F, BoundArgs...>::operator()(Args&... args) {
330 return apply_functor(f, bound_args, indexes(), tie(args...));