pub struct SubInstanceSlot {
pub port_bindings: Vec<(SymbolKey, Vec<SymbolKey>)>,
pub child_template: TemplateId,
}Expand description
Template-level child-instantiation record (NL-121) — DISTINCT from
InstanceTree/InstanceNode (instance-level, per-InstanceId,
NL-011/NL-023): this is the deduped body’s OWN enumeration of its child
instantiations, letting CODEGEN/analysis walk the deduped Template
graph without re-deriving it from InstanceTree every time.
Fields§
§port_bindings: Vec<(SymbolKey, Vec<SymbolKey>)>One entry per port of the child template, in the child’s own ports
declaration order: (child port's SymbolKey, read_set). read_set
is the driving connection expression’s read-set at the PARENT scope,
empty for an unconnected port — the same Vec<SymbolKey>
representation Task 7’s synthetic ContAssignTemplate::read_set
uses for the identical underlying expression_read_set computation.
Left Vec::new() per slot by THIS task (structure-only — see this
task’s own test); Task 7 is where expression_read_set first exists
and populates the real content.
child_template: TemplateId