public static ICommand <TArg1, TArg2, TArg3, TResult> Build <T, TArg1, TArg2, TArg3, TResult>(this CommandBuilder <T, TArg1, TArg2, TArg3> token, Expression <Func <T, TArg1, TArg2, TArg3, TResult> > expression) { var func = expression.Compile(); return(new FuncCommand <TArg1, TArg2, TArg3, TResult>((arg1, arg2, arg3) => func(token.Underlying, arg1, arg2, arg3))); }
public static ICommand <TArg1, TResult> Build <T, TArg1, TResult>(this CommandBuilder <T, TArg1> builder, Expression <Func <T, TArg1, TResult> > expression) { var func = expression.Compile(); return(new FuncCommand <TArg1, TResult>(i => func(builder.Underlying, i))); }