AST解析器树ANTLR4

AST解析器树ANTLR4,antlr4,abstract-syntax-tree,Antlr4,Abstract Syntax Tree,在使用java org.antlr.v4.Tool-visitor-lib scanner/parser/decf.g进行这些操作之后,生成了该指令(DecafParserBaseListener.java、DecafParserBaseVisitor.java、DecafParserListener.java、decafparservicistor.java)。我们的问题是如何使用这种方法来制作AST Short:在Antlr4中还没有。 它在Antlr3中可用,但到目前为止已在Antlr4的

在使用java org.antlr.v4.Tool-visitor-lib scanner/parser/decf.g进行这些操作之后,生成了该指令(DecafParserBaseListener.java、DecafParserBaseVisitor.java、DecafParserListener.java、decafparservicistor.java)。我们的问题是如何使用这种方法来制作AST

Short:在Antlr4中还没有。 它在Antlr3中可用,但到目前为止已在Antlr4的发行版中放弃。 Afaik可能会包含在进一步的版本中

您必须使用解析树和访问者/侦听器来执行任务或“手动”生成AST


根据我自己的经验——如果你以一种高效的方式创建/组织你的解析器规则——从AST开始与从解析树开始相比并没有什么大的优势。

是的,我知道,但是我如何使用基本侦听器呢?这就是我的问题,如何使用这些文档。基本上是通过继承
DecafParserBaseListener
并覆盖您感兴趣的那些方法。看或读这本书()谢谢!我会读的,我希望我能理解一切