最佳答案
关于这个我已经搜索了很多,但是我找不到任何有用的东西来帮助我构建 AST。我已经知道 ANTLR4不像 ANTLR3那样构建 AST。每个人都说: “嘿,利用访客!”,但我找不到任何例子或更详细的解释,我如何能做到这一点..。
我有一个语法必须喜欢 C,但与每个命令写在葡萄牙语(葡萄牙语编程语言)。我可以使用 ANTLR4轻松地生成解析树。我的问题是: 我现在需要做什么来创建 AST?
顺便说一下,我用 Java 和 IntelliJ..。
编辑1: 我能得到的最接近的答案是使用这个主题的答案: < a href = “//stackoverflow. com/questions/21534316/Is-there-a-simple-example-of-using-antlr4-to-create-an-AST-from-java-source-code? lq = 1”> 有没有一个使用 antlr4从 java 源代码创建 AST 并提取方法、变量和注释的简单例子? 但它只打印访问方法的名称. 。
Since the first attempt didn't work for me as I expected, I tried to use 本教程 from ANTLR3, but I couldn't figure out how to use StringTamplate instead of ST...
读 最终的 ANTLR 4参考文献这本书,我也找不到任何与 AST 有关的东西。
编辑2: 现在我有一个类来创建 DOT 文件,我只需要弄清楚如何正确使用访问者