goo blog サービス終了のお知らせ 

ひしだまの変更履歴

ひしだまHPの更新履歴。
主にTRPGリプレイの元ネタ集、プログラミング技術メモと自作ソフト、好きなゲームや音楽です。

DMDL EditorX 演算子作成ウィザード

2018-12-16 00:00:00 | PG(分散処理)

Asakusa Framework Advent Calendar 2018の16日目、拙作DMDL EditorXの機能の紹介です。

自分が最もよく使う機能のひとつが、Operatorのメソッドを作成するウィザードです。
ツールバーの「New Operator Method」というメニューからウィザードを開きます。
ウィザードでデータモデルを選択することで、そのデータモデルを使ったメソッドの雛形を生成します。

Convert演算子だと各プロパティーの移送を生成したり、GroupSortやCoGroup演算子だと@Keyをimportしてくれたり、かなり便利です。

今年はCoGroup演算子の@OnceやIterableを使えるようにしたり、GroupViewも指定できるようにしたりといった機能追加を行いました。
ちなみにMasterJoin系メソッドでもGroupViewを使うことが出来ます(MasterJoinだとMasterSelectionを使わない場合は意味無いですが)が、0.10.1以前ではバグがあってコンパイルエラーになってしまうようです。


Importer/Exporterでの入力補完

2018-12-15 20:48:55 | PG(分散処理)

Asakusa Framework Advent Calendar 2018の15日目、拙作DMDL EditorXの機能の紹介です。

Importer/Exporter(FromCsvやToCsv等)のクラスでも入力補完を行う事が出来ます。

クラス名のJavadocの位置でCtrl+SPACE(Windowsの場合)を押すと、データモデル名・説明(日本語名)を補完することが出来ます。
ただし何故か反応が鈍いので、3~4回Ctrl+SPACEを押さないと候補に出てきません。

また、getBasePathやgetResourcePatternメソッド内の文字列(ダブルクォーテーションで囲まれた部分)の中でもデータモデル名の入力補完が出来ます。
getOrderメソッドでも同様にプロパティー名の入力補完が出来ます。

他に、Importer/Exporterのクラス名の部分でCtrlを押しながらマウスカーソルを合わせるとポップアップメニューが開き、そこの「Open DMDL」を選択することでDMDL定義へジャンプできます。


DMDL EditorX データモデル検索ダイアログ

2018-12-14 00:00:00 | PG(分散処理)

Asakusa Framework Advent Calendar 2018の14日目、拙作DMDL EditorXの機能の紹介です。

DMDL EditorXのツールバーに、データモデルやプロパティーを検索するダイアログを出すボタンがあります。通常の検索ボタンと同じアイコンなのでDMDL用とは気付かないかもしれませんが^^;

このダイアログではデータモデル名やプロパティー名の部分一致での検索が出来ますが、実は正規表現なので^や$を使うことが出来ます。
さらに*を入れると「.*」を指定したのと同じ事になります。

さらに、snake_caseだけでなく、CamelCaseすなわちクラス名を入れることでも(内部ではsnake_caseに変換されて)検索できるので、意外と便利です。


DMDL EditorX Copy Java Name

2018-12-13 00:05:39 | PG(分散処理)

Asakusa Framework Advent Calendar 2018の13日目、拙作DMDL EditorXの機能の紹介です。

dmdlファイル内のデータモデル名やプロパティー名を右クリックしてポップアップメニューを出すと、「Copy Java Name」というメニューがあります。
これを選択すると、Javaのクラス名の形式(CamelCase)でクリップボードに名称がコピーされます。
Javaソースでクラス名やメソッド名として貼り付けたいときに便利です(笑)

また、Javaソース上でデータモデルのクラス名やsetter/getterメソッドを右クリックしてポップアップメニューを出すと、「Copy DMDL Name」というメニューがあります。
これを選択すると、DMDLの名前の形式(snake_case)でクリップボードに名称がコピーされます。
@Keyのgroupやorderに貼り付けたいときに便利です(笑)


DMDL EditorX ソース整形のバグ

2018-12-12 00:11:28 | PG(分散処理)

Asakusa Framework Advent Calendar 2018の12日目、拙作DMDL EditorXの機能の紹介です。

dmdlファイルのエディター上でCtrl+Shift+F(Javaソースの整形と同じキー)を押すと、DMDLも整形されます。

ただしちょっと癖があって、ブロック内の先頭のコメントはインデントが付きません。
インデントの定義はちゃんとしているんですが、ブロック内の先頭はその定義の対象外になっているようなのですorz

また、Eclipse Oxygen.3a Release (4.7.3a)だと、コピペして貼り付けたソースの末尾のセミコロンが消えることがあります。これは見た目だけの問題で、dmdlファイルを開き直すとちゃんと表示されます。
たぶんDMDL EditorXが使用しているXtextのバグだと思います。