CodeQL library for Python
codeql/python-all 6.0.1-dev (changelog, source)
Search

Class Cfg::BasicBlock

A basic block, that is, a maximal straight-line sequence of control flow nodes without branches or joins.

Import path

import python

Direct supertypes

Indirect supertypes

Known direct subtypes

Predicates

dominates

Whether this basic block dominates the other

getASuccessor

Gets a successor to this basic block

getASuccessor

Gets an immediate successor of this basic block of a given type, if any.

getImmediateDominator

Gets the basic block that immediately dominates this basic block, if any.

getLocation

Gets the location of this basic block.

inDominanceFrontier

Holds if df is in the dominance frontier of this basic block. That is, this basic block dominates a predecessor of df, but does not dominate df itself. I.e., it is equivaluent to: this.dominates(df.getAPredecessor()) and not this.strictlyDominates(df)

length

Gets the length of this basic block.

postDominates

Unsupported. Do not use.

strictlyDominates

Whether this basic block strictly dominates the other

strictlyPostDominates

Unsupported. Do not use.

Inherited predicates

alwaysReaches

Holds if flow from this BasicBlock always reaches succ

from BasicBlock
contains

Whether this basic block contains the specified node

from BasicBlock
dominanceFrontier

Dominance frontier of a node x is the set of all nodes other such that this dominates a predecessor of other but does not strictly dominate other

from BasicBlock
firstNode

Gets the first node in this basic block

from BasicBlock
getAFalseSuccessor

Gets a false successor to this basic block

from BasicBlock
getAPredecessor

Gets a predecessor to this basic block

from BasicBlock
getATrueSuccessor

Gets a true successor to this basic block

from BasicBlock
getAnExceptionalSuccessor

Gets an exceptional successor to this basic block

from BasicBlock
getAnUnconditionalSuccessor

Gets an unconditional successor to this basic block

from BasicBlock
getImmediatelyControllingBlock

Gets the ConditionBlock, if any, that controls this block and does not control any other ConditionBlocks that control this block. That is the ConditionBlock that is closest dominator.

from BasicBlock
getLastNode

Gets the last node in this basic block

from BasicBlock
getNode

Gets the nth node in this basic block

from BasicBlock
getScope

Gets the scope of this block

from BasicBlock
hasLocationInfo

Holds if this element is at the specified location. The location spans column startcolumn of line startline to column endcolumn of line endline in file filepath. For more information, see Locations.

from BasicBlock
reaches

Holds if this basic block reaches the other. Is the start of other reachable from the end of this.

from BasicBlock
reachesExit

Whether flow from this basic block reaches a normal exit from its scope

from BasicBlock
strictlyReaches

Holds if this basic block strictly reaches the other. Is the start of other reachable from the end of this.

from BasicBlock
toString

Gets a textual representation of this element.

from BasicBlock