MPS 2026.1 ヘルプ

付属品

アクセサーリーモデルは、言語のアスペクトとして(推奨)、またはソリューション内の通常のモデルとして、2 つの場所に保存できます。どちらの場合も、モデルを使用するには、言語ランタイムの言語設定に追加する必要があります。典型的な使用例としては、言語が使用されるあらゆる場所で利用できる、コンセプトインスタンスのデフォルトライブラリなどが挙げられます。

サンプル

入門図形チュートリアルの一部として作成され、サンプルプロジェクトとして MPS ディストリビューションにバンドルされている図形サンプルプロジェクトを変更してみましょう。このプロジェクトでは、言語ユーザーがさまざまなカラフルな形を定義してキャンバスに配置することができます。各形状の色は、Color クラスで定義されている StaticFieldDeclarations の 1 つへの参照として定義されています。

アクセサーリモデルを使用すると、Color クラスを直接参照する代わりに、独自の色定数を定義できるため、ユーザーソリューションから BaseLanguage に依存することになります。使用可能な色とその生成方法をより細かく制御できます。

色を表すための概念を定義する

まず、個々の色を定義するために使用する概念を定義する必要があります。

Ac1.png

ColorReference を更新する

ColorReference コンセプトは、MyColor コンセプトのノードを指す必要があります。

Ac2.png

実際の色を取得する方法を定義する

世代間、、Color クラスで定義され、対応する色の定数を表す StaticFieldDeclaration のノードと MyColor のノードを交換する必要があります。

Ac4.png

円と四角形のジェネレーターテンプレートを変更する

これらのテンプレートは、Color クラスの特定の目的の静的フィールドへの参照を挿入する参照マクロを保持します。上で定義した findColor() 動作メソッドを使用するようにマクロを変更する必要があります。

Ac3.png

Accessories モデルで色を定義する

これで色を安全に定義できます。

Ac5.png

言語を再構築した後、色定数は Canvas ノードの補完メニューで使用可能になり、生成されたコードは Java 色への正しい参照を保持します。

2026 年 5 月 05 日

関連ページ:

図形

MPS を初めて使う方で、試してみたいという方には、このチュートリアルが最適です。わずか 2 時間で、新しい言語と、その言語を使った実用的なコードを習得できます。チュートリアルでは、ゼロから始め、安全かつ分かりやすい手順で、新しい言語のコア要素を設計していきます。高度な概念、複雑な構造、難解な部分を避け、ゴール達成を目指します。チュートリアルを終える頃には、MPS とは何か、どのような原則に基づいているのかを理解できるでしょう。シートベルトを締めてください。高速に走ります。前提条件:MPS チュ...

スクリプト

スクリプト機能を使用すると、モデルの変更を一括で実行できます。利用可能なスクリプトは、「ツール」→「スクリプト」メニューに表示されます。拡張スクリプトは、指定した条件に基づいてモデルに変更を加えます。スクリプトを定義するには、対象の言語でスクリプトアスペクトを作成し、拡張スクリプトを作成します。名前と説明的なタイトルを付けます。次に、1 つ以上のアップデーターを指定します。それらにはいくつかの種類があります。コンセプトインスタンスアップデーター:「コンセプトインスタンスアップデータ」を使用する...

リファクタリング

リファクタリングのサポートは、すべての成熟した言語の IDE 機能の非常に重要な部分です。MPS は、リファクタリングアクションの開発を簡素化するためのいくつかの機能を提供します。簡単なリファクタリングは、jetbrains.mps.lang.refactoring 言語を使用して記述できます。この言語を使用してリファクタリングを記述した後、以下の手順でユーザーが利用できるようにし、呼び出し可能にする必要があります。リファクタリング用の UI アクションを作成します。これは、プラグイン言語を使用し...