Esempio n. 1
0
        private static void Main(string[] args)
        {
            Console.WriteLine("Enter exit to exit interpreter");
            Console.WriteLine("+, -, *, / are supported");
            Console.WriteLine("Just enter the variable to write its value");

            InterpreterBuilder
            .GetInterpreter(args)
            .StartProcessing("Exit");

            Console.WriteLine("Press any key to exit the application...");
            Console.ReadKey(true);
        }
Esempio n. 2
0
        public void StartProcessing(string exitString)
        {
            var evalString = reader.ReadString() ?? string.Empty;

            while (evalString != exitString)
            {
                if (evalString.StartsWith("Run "))
                {
                    InterpreterBuilder
                    .GetInterpreter(new [] { "File", evalString.Split(' ')[1] })
                    .StartProcessing(string.Empty);
                }

                evaluator.EvaluateString(evalString);
                evalString = reader.ReadString() ?? string.Empty;
            }

            foreach (var parameter in evaluator.Parameters)
            {
                writer.WriteLine($"{parameter.Key} = {parameter.Value}");
            }
        }