Skip to main content

Crate mingli_engine

Crate mingli_engine 

Source
Expand description

编排层:把命理大树当作一张记忆化计算 DAG 来跑。

  • 共享层:一个输入 → 用 Moment 把公共天文/历法子计算算一次
  • fan-out:注册表里每片叶(CastingEngine)在该共享上下文上排盘。native 走 rayon 并行; wasm32 串行,那里没有可用线程,把 rayon 链进去只是白付 37 KB。
  • 统一输出:各叶输出 serde_json::Value,便于跨叶对齐比较。

本层不认识任何具体叶——注册表由调用方注入(见 mingli-registry)。 加一片新叶不需要改动这里的任何一行。

Functions§

cast_all
一个输入 → 共享层算一次 → 并行排所有叶 → id → 盘(JSON)
cast_all_detailed
cast_all,但保留注册表顺序并附带每叶元数据(id/name/family/确定性谱/流派)。
cast_one
只算单片叶(按 id)——共享层仍只算一次,但仅排该叶(释义/单叶请求用,省去其余叶)。 未知 id 返回 None
intent_catalog
意图清单与各意图当前实际路由到的叶。
route
把一个问局意图路由到具体的叶 id 列表。

Type Aliases§

Leaves
注册表:一组待 fan-out 的叶。