Class ConditionalBranch
An instruction that jumps to a target based on a condition.
Import path
import semmle.code.cil.InstructionGroups
Direct supertypes
Indirect supertypes
Known direct subtypes
Predicates
getASuccessorType |
Gets a successor instruction to this instruction. |
getPushCount |
Gets the number of items this node pushes onto the stack. This value is either 0 or 1, except for the instruction |
Inherited predicates
canFlowNext |
Holds if this instruction passes control flow into the next instruction. |
from Instruction |
flowsTo |
Holds if this node flows to |
from DataFlowNode |
fromLibrary |
Holds if this element is from an assembly. |
from Element |
fromSource |
Holds if this element is from source code. |
from Element |
getALocalFlowSucc |
Holds if this node flows to |
from DataFlowNode |
getALocation |
Gets a location of this element, which can include locations in both DLLs and source files. |
from Instruction |
getAPredecessor |
Gets a predecessor of this node, if any. |
from ControlFlowNode |
getAPrimaryQlClass |
Gets the name of a primary CodeQL class to which this element belongs. |
from Element |
getASuccessor |
Gets a successor of this node, if any. |
from ControlFlowNode |
getAccess |
Gets the declaration accessed by this instruction, if any. |
from Instruction |
getAnOperand |
Gets an operand of this instruction, if any. |
from ControlFlowNode |
getExtra |
Gets an extra field to display for this instruction, if any. |
from Branch |
getFalseSuccessor |
Gets a false successor of this node, if any. |
from ControlFlowNode |
getFile |
Gets the file containing this element. |
from Element |
getHandler |
Gets the |
from Instruction |
getImplementation |
Gets the method containing this instruction. |
from Instruction |
getIndex |
Gets the index of this instruction. Instructions are sequenced from 0. |
from Instruction |
getLanguage |
Gets the “language” of this program element, as defined by the extension of the filename. For example, C# has language “cs”, and Visual Basic has language “vb”. |
from Element |
getLocation | from Instruction | |
getMethod |
Gets the method that contains this dataflow node. |
from Instruction |
getOpcode |
Gets the opcode of this instruction. |
from Instruction |
getOpcodeName |
Gets the opcode name of this instruction, for example |
from Instruction |
getOperand |
Gets an instruction that supplies the |
from ControlFlowNode |
getOperandType |
Gets the type of the |
from ControlFlowNode |
getParentExpr |
Gets an expression that consumes the output of this instruction on the stack. |
from ControlFlowNode |
getPopCount |
Gets the number of items this node pops from the stack. |
from ControlFlowNode |
getPrimaryQlClasses |
Gets a comma-separated list of the names of the primary CodeQL classes to which this element belongs. |
from Element |
getStackSizeAfter |
Gets the stack size after this instruction. |
from ControlFlowNode |
getStackSizeBefore |
Gets the stack size before this instruction. |
from ControlFlowNode |
getTarget |
Gets the instruction that is jumped to. |
from Branch |
getTrueSuccessor |
Gets a true successor of this node, if any. |
from ControlFlowNode |
getType | from Instruction | |
isBranch |
Holds if this control flow node has more than one successor. |
from ControlFlowNode |
isJoin |
Holds if this control flow node has more than one predecessor. |
from ControlFlowNode |
toString | from Instruction | |
toStringExtra |
Gets a more verbose textual representation of this instruction. |
from Instruction |
toStringWithTypes |
Gets the full textual representation of this element, including type information. |
from Element |