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()
     });