Exemplo n.º 1
0
        private static void tokenizerTest()
        {
            var list = new List<TokenInfo>();

            var report = new Report();
            var tokenizer = new Tokenizer("Tests/helloworld.vb", report);

            TokenInfo token;

            while (!tokenizer.IsEOF)
            {
                token = tokenizer.GetNextToken();

                list.Add(token);

                Console.WriteLine("{0,-20} {1, -30} {2}, {3}", token.GetString(), token.Token, token.Ln, token.Col);
            }

            token = tokenizer.PeekToken();
            list.Add(token);

            Console.WriteLine(token);

            printErrors(report);
        }
        private bool tryChangeFile()
        {
            if (!started)
            {
                FileChanged(this, new TokenizerEventArgs(UnderlyingTokenizer, SourceFile));
                started = true;

                return true;
            }
            else
            {
                if (tokenizer.IsEOF)
                {
                    fileIndex++;

                    if (fileIndex < compilationUnit.Count)
                    {
                        SourceFile = compilationUnit[fileIndex];
                        UnderlyingTokenizer = new Tokenizer(SourceFile, Report);

                        FileChanged(this, new TokenizerEventArgs(UnderlyingTokenizer, SourceFile));

                        return true;
                    }
                }
            }

            return false;
        }
        private void Initialize()
        {
            SourceFile = compilationUnit[fileIndex];
            UnderlyingTokenizer = new Tokenizer(SourceFile, Report);

            FileChanged += MultiFileTokenizer_FileChanged;
        }