0

DSL を検証するために @Check アノテーションを使用しています。私のDSLはjson用です。

最初は特定のオブジェクトに対してメソッドが呼び出され、変更ごとに1回呼び出されましたが、突然同じように機能しなくなりました(そして、私が何をしたのかわかりません)メソッドのシグネチャは次のとおりです。

@Check 
public void validateJson(ObjectValue object) {...}

1つのノードしか編集していませんが、GUIの各ノードに対してこのメ​​ソッドを入力します

4

1 に答える 1

0

この場合、バリデーターは正常に機能します。Xtextがモデルを再解析するとき、Check式で検証されるEMFモデルの再作成を常に回避できるとは限りません。つまり、モデルは実質的に毎回再作成されるため、完全な検証が必要です。

ただし、場合によっては、モデルの部分的な再作成のみが必要になる可能性があります。この場合、すべての要素が再検証されない可能性があります(ただし、この最適化が含まれているかどうかはわかりません)。

于 2013-01-15T08:11:58.700 に答える