如何为特定关键字添加听众



我有一个解析器语法和lexer语法,antlr4 4.7从中生成一个解析器和lexer,没问题。听众逻辑中的输入点很棒,但我想听语言中的特定关键字。不知道从哪里开始添加。

我使用的是Eclipse的Antlr4插件来从语法生成解析器和lexer。

在生成的xyzBaseListener的底部有4种非特异性方法,您可以覆盖您的需求:

@Override public void enterEveryRule(ParserRuleContext ctx) { }
@Override public void exitEveryRule(ParserRuleContext ctx) { }
@Override public void visitTerminal(TerminalNode node) { }
@Override public void visitErrorNode(ErrorNode node) { }

,例如

public class Tester extends xyzBaseListener
{
  // ... other useful stuff
  @Override public void visitTerminal(TerminalNode node) {
    System.out.println("Saw token '" + node.getText() + "'");
  }
}

参考书中有示例有关如何为基本听众分类并汇总听众的示例。

相关内容

  • 没有找到相关文章

最新更新