Example #1
0
        public Token[] PopNextStatement()
        {
            if (lastTokens != null)
            {
                Token[] tmp = lastTokens;
                lastTokens = null;
                return(tmp);
            }
            line++;
            Token t = DequeueToken();

            while (t.IsSymbol("\n"))
            {
                line++;
                t = DequeueToken();
            }
            if (storedTokens.Count == 0)
            {
                return(new Token[0]);
            }
            getNextStatementTokens.Clear();
            while (t.type != TokenType.Null && !t.IsSymbol("\n"))
            {
                getNextStatementTokens.Add(t);
                t = DequeueToken();
            }
            return(getNextStatementTokens.ToArray());
        }