2

Xtext文法では、XExpression/XBlockExpression型を使用してXbaseコードブロックを含めることができます。Javaコードブロックで同じことをするにはどうすればよいですか?含まれているJavaは、後でDSL構造から生成されたJavaに含まれる必要があります。

4

2 に答える 2

1

Javaコードブロックを直接含めることはできません(Java文法全体と、それに対応するツールサポート(変数の解決やコード生成など)を作成する準備ができている場合を除きます)。

ただし、Xbaseコードブロックは、モデル推論機能に組み込まれているXtextサービスを使用するか、XbaseCompilerを使用してJavaコードブロックに変換できます。XbaseInterpreterクラスで簡単に解釈することもできます。

最後に、Javaコードブロックが本当に必要な場合は、それらを.javaファイルに書き込み、JvmIdentizableElementsを使用してそれらを参照できます。

于 2012-09-06T14:23:43.423 に答える
1

これは、JBase(https://github.com/LorenzoBettini/jbase)で実行できます。JBaseは、説明したユースケース(https://dl.acm.org/citation.cfm?id=2972217を参照)用に特別に作成されており、XBaseの代わりにJBaseを拡張することで、小さな変更を加えることができます。

于 2019-04-12T17:45:57.360 に答える