Class ControlFlowElement
A program element that can possess control flow. That is, either a statement or an expression.
A control flow element can be mapped to a control flow node (ControlFlow::Node
)
via getAControlFlowNode()
. There is a one-to-many relationship between
control flow elements and control flow nodes. This allows control flow
splitting, for example modeling the control flow through finally
blocks.
Import path
import csharp
Direct supertypes
Indirect supertypes
Known direct subtypes
Predicates
controlsBlock | Holds if basic block |
getAControlFlowEntryNode | Gets a first control flow node executed within this element. |
getAControlFlowExitNode | Gets a potential last control flow node executed within this element. |
getAControlFlowNode | Gets a control flow node for this element. That is, a node in the control flow graph that corresponds to this element. |
getAReachableElement | Gets an element that is reachable from this element. |
getAssembly | Gets the assembly that this element was compiled into. |
getEnclosingCallable | Gets the enclosing callable of this element, if any. |
isLive | Holds if this element is live, that is this element can be reached from the entry point of its enclosing callable. |
reachableFrom | Holds if the current element is reachable from |
Inherited predicates
fromLibrary | Holds if this element is from an assembly. | from Element |
fromSource | Holds if this element is from source code. | from Element |
getAChild | Gets a child of this element, if any. | from Element |
getAChildExpr | Gets a child expression of this element, if any. | from ExprOrStmtParent |
getAChildStmt | Gets a child statement of this element, if any. | from ExprOrStmtParent |
getALocation | Gets a location of this element, including sources and assemblies. | from Element |
getAPrimaryQlClass | Gets the name of a primary CodeQL class to which this element belongs. | from Element |
getChild | Gets the | from ExprOrStmtParent |
getChildExpr | Gets the | from ExprOrStmtParent |
getChildStmt | Gets the | from ExprOrStmtParent |
getFile | Gets the file containing this element. | from Element |
getIndex | Gets the index of this element among its parent’s other children (zero-based). | from Element |
getLocation | Gets the location of this element. Where an element has locations in source and assemblies, choose the source location. If there are multiple assembly locations, choose only one. | from Element |
getNumberOfChildren | Gets the number of children of this element. | from Element |
getParent | Gets the parent of this element, if any. | from Element |
getPrimaryQlClasses | Gets a comma-separated list of the names of the primary CodeQL classes to which this element belongs. | from Element |
toString | Gets a textual representation of this element. | from Element |
toStringWithTypes | Gets the full textual representation of this element, including type information. | from Element |