使用监听器在ANTLR中进行if/else语句的编写

23 浏览
0 Comments

使用监听器在ANTLR中进行if/else语句的编写

我正在为一个学校项目创建一个简单的编程语言。我正在使用ANTLR 4从我的语法中生成词法分析器和语法分析器。到目前为止,我一直在使用ANTLR的监听器模式来应用编程语言的实际功能。

现在我想要实现if/else语句,但我不确定在使用监听器模式时是否可以实现这些语句,因为ANTLR决定在使用监听器时以哪种顺序遍历解析树,而我想象实现if/else语句将要根据语句中满足的条件在解析树中跳转。

有人能告诉我是否可能使用ANTLR实现if/else语句,还是我需要自己实现访问者模式?同时,有人能给出一个非常简单的实现这些语句的例子吗?

0