yumemi/gen/emit/hash
入力ハッシュ。20 の規約① 「全ファイル先頭に GENERATED from <入力> と入力ハッシュを置く」。
どの入力がその束を決めるかを束ごとに固定する ── app gen --check が「入力が変われば
ハッシュが変わる / 変わらなければ変わらない」で判定できるようにするため。
| 束 | 入力 |
|---|---|
1 src/gen/types/* | src/types.gleam |
2 src/gen/query* | src/entity/*.gleam 全部 |
3 src/gen/reads/<svc> | その Service + src/types.gleam + src/entity/*.gleam 全部 |
4 db/queries/<svc>/* | 束3 と同じ |
Types
pub type Hashes {
Hashes(
types: String,
entities: String,
entity_files: List(#(String, String)),
services: List(#(String, String)),
entry: String,
)
}
Constructors
-
Hashes( types: String, entities: String, entity_files: List(#(String, String)), services: List(#(String, String)), entry: String, )Arguments
- entity_files
-
Entity module 名 -> その Entity ファイルだけのハッシュ
- services
-
Service module 名 -> ハッシュ
- entry
-
entry.gleam と全 Service 宣言。入口の route 表を決める入力。
Values
pub fn of(units: List(source.Unit)) -> Hashes