yumemi/gen/emit/front

面の束 ── route / blocks / widgets / API / Service / Out の写し。 面側へ back の module を再輸出せず、面 package が単独で型を持てる形にする。

Values

pub fn decoder_notes(
  app: model.App,
  units: List(source.Unit),
) -> List(stop.Note)

Stop before writing a decoder for variants with the same encoded shape.

pub fn emit(
  app: model.App,
  back_units: List(source.Unit),
  package: face.Package,
  model_: front.Front,
  hashes: hash.Hashes,
) -> List(types.File)
pub fn gate(
  app: model.App,
  back_units: List(source.Unit),
  package: face.Package,
  front: front.Front,
) -> gate.Gate

面の門(数える口を back の入口へ渡すのに生成器の入口が読む、0.12)。

pub fn gate_notes(
  app: model.App,
  back_units: List(source.Unit),
  package: face.Package,
  front: front.Front,
) -> List(stop.Note)

門の宣言(src/gate.gleam)の診断。

pub fn interactive_notes(
  app: model.App,
  back_units: List(source.Unit),
  package: face.Package,
  front: front.Front,
  hashes: hash.Hashes,
) -> List(stop.Note)

emit の側で見る interactive Component の条文(Service の model と route の要るもの)。

pub fn route_notes(
  app: model.App,
  package_name: String,
  front: front.Front,
  hashes: hash.Hashes,
) -> List(stop.Note)
pub fn route_order(left: String, right: String) -> order.Order

route 表の順 ── 段ごとに比べ、同じ位置で literal の段を param の段より先に置く (/articles/new は /articles/:id より先)。shell も門もこの順で最初に当たった Page を採る。

pub fn route_variant(page: front.Page) -> String

Page の閉じた enum Route の variant 名(フォルダの道の各段を PascalCase にしてつなぐ、根は Root)。

pub fn surface_notes(
  app: model.App,
  units: List(source.Unit),
  package: face.Package,
  front: front.Front,
) -> List(stop.Note)

第 2・26〜30 条と、生の CSS の規則の数え(exit 0 の警告、面ごとに 1 行)。

✨ Search Document