1

これは NuSMV 言語の文法の一部です。

BasicExpression:
Constant | '(' BasicExpression ')' | '!' BasicExpression | BasicExpression '&' BasicExpression;
Constant:
BooleanConstant
BooleanConstant: 
'TRUE' | 'FALSE';

残念ながら、XText は、この文法に左再帰があることを示す例外をスローしています。どうすれば修正できますか?

ありがとう。

4

2 に答える 2

1

次のような新しいルール (新しい階層) を簡単に導入できます。

BasicExpression:
    firstContent=ExpressionContent ("&" secondContent=ExpressionContent)?
;

ExpressionContent:
    Constant 
    | '(' BasicExpression ')' 
    | '!' BasicExpression 
;

そうすれば、ルールは再帰的に残されなくなります。

クレズンブルズルへの挨拶

于 2015-05-24T17:57:12.253 に答える