Ejemplo n.º 1
0
        void OnConsoleInput(object sender, ConsoleInputEventArgs e)
        {
            if (string.IsNullOrEmpty(e.Text))
            {
                WritePrompt();
                return;
            }

            if (expression == null)
            {
                expression = e.Text;
            }
            else
            {
                expression += "\n" + e.Text;
            }

            Task.Run(() => {
                try {
                    IsStopButtonEnabled = true;

                    using (var consoleOutputWriter = ConsoleOutputTextWriter.Create(logTextWriter)) {
                        expression = Evaluate(expression);
                    }
                } finally {
                    WritePrompt();
                    IsStopButtonEnabled = false;
                }
            }).Ignore();
        }
Ejemplo n.º 2
0
        public static ConsoleOutputTextWriter Create(TextWriter outputWriter, TextWriter errorWriter)
        {
            var consoleOutputWriter = new ConsoleOutputTextWriter(Console.Out, Console.Error);

            ReplaceConsoleWriters(outputWriter, errorWriter);

            return(consoleOutputWriter);
        }