所以我在 ANTLR 中创建并编译了一个语法以及 Java 的所有内容。解析器确实工作正常,并且可以验证语法中编写的语句是否正确。现在我正在尝试将解析器链接到Java,以便它可以执行这些功能。
例如,CREATE TABLE Animals (name VARCHAR(20),kind VARCHAR(8),years INTEGER)想要创建一个名为animals.db的文件,其中每个动物都有名称、种类和年龄。我对如何将 Java 方法链接到名为 create 的方法中的“CREATE TABLE”之类的内容感到困惑,该方法接受表的参数(名称和属性)。
最佳答案
@sepp2k 已经提到,您可以使用监听器或访问者作为引用来实现这些目标,您可以浏览下面提供的非常有用的链接--
如何使用 ANTLR 来处理 Java --> https://theendian.com/blog/antlr-4-lexer-parser-and-listener-with-example-grammar/
关于听众和访客之间的差异 --> http://jakubdziworski.github.io/java/2016/04/01/antlr_visitor_vs_listener.html
关于java - 编写了语法并使用 ANTLR 创建了所有内容,试图找出如何将其链接到 Java 程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52635090/