Expand description
CompiledSubgraph — 编译后的 Subgraph 描述符。
§设计理念
Builder 阶段:
SubgraphSpec<Outer, Inner, M, Lens> (强类型)
编译阶段:
CompiledSubgraph<Outer> (类型擦除 Inner/Lens/M)
Engine 执行:
match node.kind {
NodeKind::Subgraph(spec) => self.execute_subgraph(spec).await,
}§类型擦除
SubgraphSpec 有 4 个泛型参数,NodeKind 只有 2 个。
CompiledSubgraph 通过 StateProjector trait 擦除 Inner/Lens/M,
只保留 Outer(外层 State 类型)。
§与 SubgraphSpec 的区别
- SubgraphSpec:Builder 阶段,强类型,包含 Graph + Lens
- CompiledSubgraph:编译后,类型擦除,可存入 NodeKind
Structs§
- Compiled
Subgraph - 编译后的 Subgraph 描述符 — 可存入 NodeKind。
Traits§
- State
Projector - 状态投影器 — 类型擦除的 Outer → Inner 投影 + 执行。