public EvaluatorState(Func<Expression, Expression> resolveFunction, int depthLimit, EvaluatorFlags flags) { _resolveFunction = resolveFunction; _depthLimit = depthLimit; _flags = flags; }
public static Expression Evaluate(Expression expression, Func<Expression, Expression> resolveFunction = null, int depthLimit = 1000, EvaluatorFlags flags = 0) { return Evaluate(expression, depthLimit, new EvaluatorState(resolveFunction, depthLimit, flags)); }