Skip to content

kirin.analysis.const.prop.Frame

← Module overview

classFramesource

kirin.analysis.const.prop.Frame

Bases: ForwardFrame[Result]

Signature
class Frame(code: Statement, worklist: WorkList[Successor[ResultType]] = WorkList(), visited: dict[ir.Block, set[tuple[Successor[ResultType], int]]] = dict(), should_be_pure: set[ir.Statement] = set(), frame_is_not_pure: bool = False, *, parent: FrameABC | None = None, has_parent_access: bool = False, lineno_offset: int = 0, entries: dict[SSAValue, ValueType] = dict())

Parameters

NameTypeDefaultDescription
codeStatementrequired
worklistWorkList[Successor[ResultType]]WorkList()
visiteddict[ir.Block, set[tuple[Successor[ResultType], int]]]dict()
should_be_pureset[ir.Statement]set()
frame_is_not_pureboolFalse
parentFrameABC | NoneNone
has_parent_accessboolFalse
lineno_offsetint0
entriesdict[SSAValue, ValueType]dict()

Attributes

NameTypeDefaultDescription
should_be_pureset[ir.Statement]field(default_factory=set)If any ir.MaybePure is actually pure.
frame_is_not_pureboolFalseIf we hit any non-pure statement.