如何引用在 ANTLR 中多次调用的相同规则?

我有一个类似于下面的语法


E returns [String vals] : 

    E '+' E {$vals = $E.vals+$E.vals}|

    E '-' E {$vals = $E.vals+$E.vals}

我想访问两个不同的“E”值,但我无法这样做。我想区分 3 个“E”规则,一个是基础规则,另一个是被调用的 2 个。


我正在创建一个语法,我将使用它来评估某些表达式。


运算符“+”和“-”是一些仲裁运算符。


婷婷同学_
浏览 188回答 1
1回答

慕勒3428872

要在操作中引用同一规则的多次使用,您可以像这样为它们添加标签:e1=exp op=('+'|'-') e2=exp {  // code that uses $e1 and $e2}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java