Пример #1
0
        public Parser(string text)
        {
            var         tokens = new List <SyntaxToken>();
            var         lexer  = new Lexer(text);
            SyntaxToken token;

            do
            {
                token = lexer.NewToken();
                if (token.Kind != SyntaxKind.WhiteSpaceToken &&
                    token.Kind != SyntaxKind.BadToken)
                {
                    tokens.Add(token);
                }
            } while (token.Kind != SyntaxKind.EndOfFileToken);
            _tokens = tokens.ToArray();
            _diagnostics.AddRange(lexer.Diagnostic);
        }