Skip to main content

Module control

Module control 

Source
Expand description

Data-dependent control flow: how a loop decides to stop and how a branch picks an arm.

Both decisions read a node’s output Value. The contract lives here, in one place, because the compiler resolves it and the executor applies it — and because it is the surface a Python filter has to satisfy.

The rule throughout: an unreadable signal is an error, never a default. Guessing (continue looping, take the first arm) turns a typo into a silent wrong answer that surfaces hours later as a bad result rather than a stack trace.

Enums§

LoopCondition
What ends a loop.
LoopSignal
A loop body’s verdict on whether to go round again.

Constants§

DEFAULT_ARM_LABELS
Labels treated as the catch-all arm when no label matches the selector.

Functions§

is_default_arm
Is this label a catch-all arm?
read_arm_selector
Read the arm label a branch condition selected.
read_loop_signal
Read a termination signal out of a node’s output.