スタブジェネレーター¶
スタブジェネレーターは .yaml ファイルを読み込み、マシンごとに4つのKotlinソースファイルを出力します。
| ファイル | 内容 |
|---|---|
{Name}State.kt |
すべてのステートのシールドインターフェース階層。 |
{Name}Action.kt |
すべてのアクション型をリストするシールドインターフェース。 |
{Name}Effect.kt |
すべてのエフェクト型をリストするシールドインターフェース。 |
{Name}StateMachine.kt |
生成された型に接続された stateMachine { } DSL。 |
これはスキャフォールディングステップです。生成されたファイルは自由に編集できます。
セットアップ¶
monakaStubGenerator {
input.set("${layout.buildDirectory.get()}/monaka-yaml")
outputDir.set(layout.projectDirectory.dir("src/commonMain/kotlin/com/example/auth"))
style.set(com.example.gradle.StubStyle.CLASS)
replace.set(false)
useTransitionAnnotation.set(true)
}
実行方法¶
CLI オプション¶
| オプション | デフォルト | 説明 |
|---|---|---|
--input |
拡張機能の input |
.yaml ファイルまたはディレクトリへのパス。 |
--output |
拡張機能の outputDir または YAML ファイルのディレクトリ |
生成された .kt ファイルを書き込むディレクトリ。 |
--style |
class |
生成スタイル: class または factory。 |
--replace |
false |
true のとき、既存ファイルを上書き。 |
--use-transition-annotation |
true |
@SelfTransition / @Transition をステートシールドインターフェースに出力。 |
生成スタイル¶
CLASS(デフォルト)¶
依存関係をコンストラクターパラメーターとして注入する場合に使用します。
FACTORY¶
外部依存関係のないマシン、またはクロージャキャプチャーアプローチを好む場合に使用します。