private static IEnumerable <object> Evaluate(ArmArgumentListAst node) { foreach (var arg in node.ArgumentList) { yield return(ArmExpressionEvaluator.Evaluate(arg)); } }
public static object Evaluate(string expression) { var ast = ArmExpressionParser.Parse(expression); var value = ArmExpressionEvaluator.Evaluate(ast); return(value); }
private static object Evaluate(ArmExpressionAst node) { return(node switch { ArmInvocationExpressionAst n => ArmExpressionEvaluator.Evaluate(n), ArmNumericLiteralExpressionAst n => ArmExpressionEvaluator.Evaluate(n), ArmStringLiteralExpressionAst n => ArmExpressionEvaluator.Evaluate(n), _ => throw new NotImplementedException() });