Ejemplo n.º 1
0
        public IEnumerable <ParseTreeNode> Parse(string content)
        {
            string tmp = content;

            PreParse(ref tmp);
            Java8Lexer  lexer  = new Java8Lexer(CharStreams.fromstring(tmp));
            Java8Parser parser = new Java8Parser(new CommonTokenStream(lexer));

            JavaClassVisitor visitor = new JavaClassVisitor()
            {
                baseClassPath = _basePath.ClassPath, filePath = _basePath.Path
            };

            return(visitor.Visit(parser.compilationUnit()).Children);
        }
Ejemplo n.º 2
0
        public JavaAST Parse(string filePath)
        {
            var code = File.ReadAllText(filePath);

            var stream = CharStreams.fromString(code);
            var lexer  = new Java8Lexer(stream);
            var tokens = new CommonTokenStream(lexer);
            var parser = new Java8Parser(tokens);

            parser.BuildParseTree = true;

            var cu = parser.compilationUnit();

            return(JavaAST.ConstructAST(cu));
        }
Ejemplo n.º 3
0
        public string Tokenize(string fileContent)
        {
            AntlrInputStream inputStream = new AntlrInputStream(fileContent);
            Java8Lexer       lexer       = new Java8Lexer(inputStream);

            Antlr4.Runtime.CommonTokenStream tokenStream = new Antlr4.Runtime.CommonTokenStream(lexer);
            tokenStream.Fill();
            string result = "";

            IList <Antlr4.Runtime.IToken> tokens = tokenStream.GetTokens();

            foreach (var token in tokens)
            {
                result += (token.Type == Java8Lexer.Identifier) ? "ID" : token.Text;
            }

            result = result.Replace("<EOF>", "");
            return(result);
        }