XTextで私自身のDSLを開発しています。私の現在の.xtextファイルここXTextで自分のDSL。無制限のかっこ( "("、 ")")の問題
1 AND (2 OR (3 OR 4))
:
が、私はこのような何かをしたい
grammar org.xtext.example.mydsl.MyDsl with org.eclipse.xtext.common.Terminals
generate myDsl "http://www.xtext.org/example/mydsl/MyDsl"
Model:
(greetings+=CONDITION_LEVEL)
;
terminal NUMBER :
('1'..'9') ('0'..'9')*
;
AND:
' AND '
;
OR:
' OR '
;
OPERATOR :
AND | OR
;
CONDITION_LEVEL:
('('* NUMBER (=>')')* OPERATOR)+ NUMBER ')'*
;
私が午前問題は、DSLが無制限のブラケットを作成する可能性を持つべきであるということです、プログラマーが開いた括弧をすべて閉じないとエラーが表示されます。
例:
1 AND (2 OR (3 OR 4)
1つのブラケットが不足している - >エラーを確認する必要があります。
私はこれをXTextでどのように実現できるのか分かりません。誰でも助けることができますか?
thxを支援します。
@SCBoy、「隠れ端末記号」に関する私の発言も見てください。 –