public static Func <T, T, T> CreateTwoParametricFunction <T>(Expression <T> expression, string firstVarName, string secondVarName) { VariableExpression <T> variable1 = expression.FindVariable(firstVarName); if (variable1 == null) { throw new ArgumentException(String.Format(Properties.Resources.EXC_VARIABLE_NOT_FOUND, firstVarName)); } VariableExpression <T> variable2 = expression.FindVariable(secondVarName); if (variable2 == null) { throw new ArgumentException(String.Format(Properties.Resources.EXC_VARIABLE_NOT_FOUND, secondVarName)); } TwoParametricFunctionCreator <T> creator = new TwoParametricFunctionCreator <T>(expression, variable1, variable2); return(creator.Evaluate); }
public static Func <T, T, T> CreateTwoParametricFunction <T>(Expression <T> expression, VariableExpression <T> firstVar, VariableExpression <T> secondVar) { TwoParametricFunctionCreator <T> creator = new TwoParametricFunctionCreator <T>(expression, firstVar, secondVar); return(creator.Evaluate); }