0
我想在这个语法来设置根AST:ANTLR:“^”来了作为一个完整的惊喜给我
boolexp : relexp op=(AND | OR)^ boolexp
| relexp
;
,但得到这个错误:
'^' came as a complete surprise to me
的原因是什么?
我想在这个语法来设置根AST:ANTLR:“^”来了作为一个完整的惊喜给我
boolexp : relexp op=(AND | OR)^ boolexp
| relexp
;
,但得到这个错误:
'^' came as a complete surprise to me
的原因是什么?
如果这是ANTLR 4,AST运算符已被删除,以支持自动分析树构造。
如果这是ANTLR 3,则可能需要将标签移动到括号内,如下所示。
boolexp : relexp (op=AND | op=OR)^ boolexp
| relexp
;
那么应该如何设置root并创建Visual AST?它是版本4; – user3758844
什么让你吃惊?你期望看到什么?你究竟看到了什么? –
@GeorgeStocker,它是[ANTLR返回的实际错误信息](https://github.com/antlr/antlr4/blob/274120c2b6ea059ad8e9538103163667d2575a2c/tool/src/org/antlr/v4/parse/ToolANTLRParser.java#L69):) –
我只是想将op =(AND | OR)设置为ROOT。 – user3758844