我想为以下
编写规则INTEGER X;
IF GIBBERISH THEN
X = 10;
ELSE
X = 15;
END;
在上面的程序中,我想为GIBBERISH中的任何角色编写一个终结规则,例如code('Xfr)
或ADEF==DCF+1
。
我写了一个终极规则
// GIBBERISH
terminal GIBBERISH: (.)* ;
我收到了这个错误
The following token definitions can never be matched because prior tokens match the same
input: RULE_ID,RULE_INT,RULE_STRING,RULE_ML_COMMENT,RULE_WS,RULE_ANY_OTHER
我也理解为什么会显示此错误消息,但无论如何我想要覆盖它。
答案 0 :(得分:0)
不要从终端规则扩展你的语法。从语法头中删除扩展字符串,将删除所有这些终端。