Esempio n. 1
0
        public static void Main(string[] args)
        {
            if (args.Length > 0 )
            {

                for (int i = 0; i < args.Length; i++)
                {
                    string inputFileName = args[i];
                    if (!Path.IsPathRooted(inputFileName))
                    {
                        inputFileName = Path.Combine(Environment.CurrentDirectory, inputFileName);
                    }

                    ICharStream input = new ANTLRFileStream(inputFileName);
                    FuzzyJava lex = new FuzzyJava(input);
                    ITokenStream tokens = new CommonTokenStream(lex);
                    tokens.ToString();
                    //System.out.println(tokens);
                }
            }
            else
                Console.Error.WriteLine("Usage: fuzzy <input-file-list>");
        }
        public void TestTokensRules()
        {
            Grammar pg = new Grammar(
                "parser grammar p;\n" +
                "a : (INT|FLOAT|WS)+;\n" );
            Grammar g = new Grammar();
            g.ImportTokenVocabulary( pg );
            g.FileName = "<string>";
            g.SetGrammarContent(
                "lexer grammar t;\n" +
                "INT : (DIGIT)+ ;\n" +
                "FLOAT : (DIGIT)+ '.' (DIGIT)* ;\n" +
                "fragment DIGIT : '0'..'9';\n" +
                "WS : (' ')+ {channel=99;};\n" );
            ICharStream input = new ANTLRStringStream( "123 139.52" );
            Interpreter lexEngine = new Interpreter( g, input );

            CommonTokenStream tokens = new CommonTokenStream( lexEngine );
            tokens.LT(5); // make sure it grabs all tokens
            string result = tokens.ToString();
            //System.out.println(result);
            string expecting = "123 139.52";
            Assert.AreEqual( expecting, result );
        }