0
我正在將Antlr語法文件升級到最新的Antlr4。將語法文件升級到Antlr4
我已經轉換了大部分的文件,但堅持語法差異,我無法弄清楚。 3這樣的區別是:
equationset: equation* EOF!;
equation: variable ASSIGN expression -> ^(EQUATION variable expression)
;
orExpression
: andExpression (OR^ andExpression)*
;
在第一個錯誤是由於!我不確定是否EOF和EOF!是否相同。刪除!解決了錯誤,但我想確保這是正確的修復。
在第二條規則中, - >和^給出錯誤。我不確定什麼是Antlr4等價物。
在第3條規則中,^給出錯誤。刪除它可以修復錯誤,但是我找不到任何遷移指南來解釋什麼應該與此等效。
可以請你給我這3條規則的Antrl4等價物,並給出一些簡單的解釋是什麼區別?如果您可以參考任何其他資源,我可以找到答案也可以。
在此先感謝。
在v4中,如果你需要一個AST,你必須自己生成它(這並不壞,我會爭辯它給你更多的自由),我寫了一個如何做到這個[這裏](http://stackoverflow.com/a/29996191/3764814)的例子。 –