我是ANTLR的新手,正在使用ANTLR4(4.7.2 Jar文件(。我目前正在研究Oracle Parser。
有没有一种方法可以从Parser或Lexer直接向AST添加一个节点(带有一些文本(?我将评论隐藏在我的Lexer中,并希望将其直接添加到树中。
有可能吗?我相信Less4j允许类似的事情发生。
有没有办法从Parser或Lexer直接向AST添加节点(带有一些文本(?
不是来自lexer:在那个阶段还没有解析树。
从解析器中可以,但没有ANTLR API可以做到这一点。ANTLR为您提供解析树,就像它解析您的输入一样。它不允许你对其进行突变。你必须创建自己的解析树,同时遍历ANTLR解析树,并在该阶段自己进行突变(包括读取隐藏通道(。