body method

  1. @override
String body(
  1. String baseName,
  2. String className
)
override

Defines the actual body code. path is passed relative to lib, baseName is the filename, and className is the filename converted to Pascal case.

実際の本体コードを定義します。pathlibからの相対パス、baseNameにファイル名が渡され、classNameにファイル名をパスカルケースに変換した値が渡されます。

Implementation

@override
String body(String baseName, String className) {
  var header = r"""
様々な場所で利用可能なタイプである`ModelFieldValue`の一覧と利用方法を下記に記載する。

## 利用可能な場所一覧

- `Model`の`DataField`におけるタイプ
- `Page`や`Widget`、`Controller`等のコンストラクタパラメーター
- `Page`や`Widget`、`Controller`等のフィールド
- 各関数やメソッドの引数と戻り値
- 処理内の変数

## `ModelFieldValue`の一覧

| Type | Summary | Usage |
| --- | --- | --- |
""";
  for (final entry in kModelFieldValueList.entries) {
    header +=
        "| `${entry.key}` | ${entry.value.excerpt} | [Usage](mdc:.cursor/rules/model_field_value/${entry.key.toSnakeCase()}.mdc) |\n";
  }
  return header;
}