IR Helpers

autoform.extend.using_interpreter(interpreter)[source]

Run primitive dispatch through an interpreter inside the context.

Parameters:

interpreter (T)

Return type:

Generator[T, None, None]

autoform.extend.serial_fanout()[source]

Run scheduled async fanout sequentially inside the context.

Return type:

Generator[None, None, None]

autoform.extend.is_irvar(x)[source]

Return True if input is an IRVar.

Return type:

TypeGuard[IRVar]

autoform.extend.ir_aval(x, /)[source]

Return the aval for an IR variable, otherwise return input unchanged.

This is useful when constructing new IR trees from existing ones: concrete literals stay concrete, while symbolic variables are replaced by the abstract values needed to create fresh variables or abstract outputs.