コード例 #1
0
        public override Water.Statement Next()
        {
            if (Water.Environment.IsConstant("_Exit") || Water.Environment.IsConstant("_Restart"))
            {
                return(null);
            }

            while (true)
            {
                System.Console.WriteLine();
                System.Console.Write(">");

                string s = System.Console.ReadLine();
                if (s.Length > 0)
                {
                    wave.ConsoleReader    reader    = new wave.ConsoleReader(s);
                    Water.StatementParser parser    = new Water.StatementParser(reader);
                    Water.Statement       statement = parser.Parse();
                    if (statement != null)
                    {
                        return(statement);
                    }
                }
            }
        }
コード例 #2
0
        private void Execute(string text)
        {
            System.IO.StringWriter writer = new System.IO.StringWriter();
            Water.Environment.Output = writer;

            Water.StatementParser parser = new Water.StatementParser(new System.IO.StringReader(text));

            Water.Interpreter.Interpret(parser.Parse(), Water.Environment.Output);

            WriteLine(writer.ToString());
        }
コード例 #3
0
ファイル: Iterator.cs プロジェクト: mstanford/water
 public Iterator(Water.TextReader reader)
 {
     this._reader = reader;
     this._parser = new Water.StatementParser(this._reader);
 }
コード例 #4
0
ファイル: Iterator.cs プロジェクト: mstanford/water
 public Iterator(System.IO.TextReader reader)
 {
     this._reader = new Water.TextReader(reader);
     this._parser = new Water.StatementParser(this._reader);
 }