Spaces:
Runtime error
Runtime error
| from __future__ import absolute_import | |
| cimport cython | |
| from .Visitor cimport CythonTransform, TreeVisitor | |
| cdef class ControlBlock: | |
| cdef public set children | |
| cdef public set parents | |
| cdef public set positions | |
| cdef public list stats | |
| cdef public dict gen | |
| cdef public set bounded | |
| # Big integer bitsets | |
| cdef public object i_input | |
| cdef public object i_output | |
| cdef public object i_gen | |
| cdef public object i_kill | |
| cdef public object i_state | |
| cpdef bint empty(self) | |
| cpdef detach(self) | |
| cpdef add_child(self, block) | |
| cdef class ExitBlock(ControlBlock): | |
| cpdef bint empty(self) | |
| cdef class NameAssignment: | |
| cdef public bint is_arg | |
| cdef public bint is_deletion | |
| cdef public object lhs | |
| cdef public object rhs | |
| cdef public object entry | |
| cdef public object pos | |
| cdef public set refs | |
| cdef public object bit | |
| cdef public object inferred_type | |
| cdef class AssignmentList: | |
| cdef public object bit | |
| cdef public object mask | |
| cdef public list stats | |
| cdef class AssignmentCollector(TreeVisitor): | |
| cdef list assignments | |
| @cython.final | |
| cdef class ControlFlow: | |
| cdef public set blocks | |
| cdef public set entries | |
| cdef public list loops | |
| cdef public list exceptions | |
| cdef public ControlBlock entry_point | |
| cdef public ExitBlock exit_point | |
| cdef public ControlBlock block | |
| cdef public dict assmts | |
| cpdef newblock(self, ControlBlock parent=*) | |
| cpdef nextblock(self, ControlBlock parent=*) | |
| cpdef bint is_tracked(self, entry) | |
| cpdef bint is_statically_assigned(self, entry) | |
| cpdef mark_position(self, node) | |
| cpdef mark_assignment(self, lhs, rhs, entry) | |
| cpdef mark_argument(self, lhs, rhs, entry) | |
| cpdef mark_deletion(self, node, entry) | |
| cpdef mark_reference(self, node, entry) | |
| @cython.locals(block=ControlBlock, parent=ControlBlock, unreachable=set) | |
| cpdef normalize(self) | |
| @cython.locals(bit=object, assmts=AssignmentList, | |
| block=ControlBlock) | |
| cpdef initialize(self) | |
| @cython.locals(assmts=AssignmentList, assmt=NameAssignment) | |
| cpdef set map_one(self, istate, entry) | |
| @cython.locals(block=ControlBlock, parent=ControlBlock) | |
| cdef reaching_definitions(self) | |
| cdef class Uninitialized: | |
| pass | |
| cdef class Unknown: | |
| pass | |
| cdef class MessageCollection: | |
| cdef set messages | |
| @cython.locals(dirty=bint, block=ControlBlock, parent=ControlBlock, | |
| assmt=NameAssignment) | |
| cdef check_definitions(ControlFlow flow, dict compiler_directives) | |
| @cython.final | |
| cdef class ControlFlowAnalysis(CythonTransform): | |
| cdef object gv_ctx | |
| cdef object constant_folder | |
| cdef set reductions | |
| cdef list env_stack | |
| cdef list stack | |
| cdef object env | |
| cdef ControlFlow flow | |
| cdef bint in_inplace_assignment | |
| cpdef mark_assignment(self, lhs, rhs=*) | |
| cpdef mark_position(self, node) | |