Exemple #1
0
        public void Read()
        {
            int parenCount = 0;

            while (true)
            {
                string Line = Input.ReadLine();
                if (Line.Length == 0)
                {
                    return;
                }
                Lex.AddText(Line);
                while (Lex.TokensRemain == true)
                {
                    Token t = Lex.NextToken();
                    switch (t)
                    {
                    case LeftParenToken l:
                        parenCount++;
                        goto default;

                    case RightParenToken r:
                        parenCount--;
                        goto default;

                    default:
                        Toks.Add(t);
                        break;
                    }
                    if (parenCount == 0)
                    {
                        return;
                    }
                }
            }
        }