flowrep.compiler.flow_control module

flowrep.compiler.flow_control.emit_flow_control(node: FlowControlRecipeAlias, label: str, in_resolver: statements.InResolverType, produced: dict[tuple[str, str], str], required_by_handle: dict[tuple[str, str], str], emitter: function.Emitter, alloc: function.NameAllocator) list[str][source]

Dispatch a flow-control node to the appropriate emitter.

flowrep.compiler.flow_control.emit_flow_control_body(node: FlowControlRecipeAlias, label: str, in_syms: dict[str, str], required: dict[str, str], emitter: function.Emitter, alloc: function.NameAllocator) tuple[list[str], dict[str, str]][source]

Inline a flow-control recipe that sits directly as a branch/loop body.

Bridges _emit_body’s (in_syms, required) view to the (in_resolver, produced, required_by_handle) view of _emit_flow_control(), then maps the produced output symbols back to out_syms for the caller.