ソースへの出力について
StateGoは『状態遷移図』を設計するツールです。
状態を表すステートと呼ばれるノードのテーブルに直接プログラムを書込みます。
書き込まれたプログラムは、テンプレートにより再配置されて、実行可能なソースコードになります。
出力先となるソースコードに変換内容を挿入する場所を用意します。
例えば、C#の場合、以下のようになります。
using System;
using System.IO;
:
: 自由にプログラミング
:
public class HogeControl {
:
: 自由にプログラミング
:
// [STATEGO OUTPUT START] indent(4) $/../$ 挿入開始マーク
ここに変換されたソースコードが挿入されます。
// [STATEGO OUTPUT END] 挿入終了マーク
:
: 自由にプログラミング
:
}
テンプレートによって変換された各ステートが、【挿入開始マーク】と【挿入終了マーク】の間に挿入されます。
つまりは、それ以外は自由にプログラミングが可能なのです。
シンプルな使い方
シンプルな使い方として、ステート内のプログラムは関数名だけにして、その関数の実装を挿入場所以外で行えばよいのです。
StateGoの変換はステートの内容をテンプレートに添って再配置して挿入場所に入れているだけだから、StateGo内で使用された関数・変数を、挿入場所以外で定義すればよいというわけです。