Class Ssa::UninitializedDefinition
An SSA definition inserted at the beginning of a scope to represent an uninitialized local variable. For example, in
def m
x = 10 if b
puts x
end
since the assignment to x
is conditional, an unitialized definition for
x
is inserted at the start of m
.
Import path
import codeql.ruby.dataflow.SSA
Direct supertypes
Indirect supertypes
Predicates
getLocation | Gets the location of this SSA definition. |
toString | Gets a textual representation of this SSA definition. |
Inherited predicates
definesAt | Holds if this SSA definition defines | from Definition |
getAFirstRead | Gets a first control-flow node that reads the value of this SSA definition. That is, a read that can be reached from this definition without passing through other reads. | from Definition |
getALastRead | Gets a last control-flow node that reads the value of this SSA definition. That is, a read that can reach the end of the enclosing CFG scope, or another SSA definition for the source variable, without passing through any other read. | from Definition |
getARead | Gets a control-flow node that reads the value of this SSA definition. | from Definition |
getAnUltimateDefinition | Gets a definition that ultimately defines this SSA definition and is not itself a phi node. | from Definition |
getBasicBlock | Gets the basic block to which this SSA definition belongs. | from Definition |
getControlFlowNode | Gets the control flow node of this SSA definition, if any. Phi nodes are examples of SSA definitions without a control flow node, as they are modeled at index | from Definition |
getScope | Gets the scope of this SSA definition. | from Definition |
getSourceVariable | Gets the source variable underlying this SSA definition. | from Definition |
hasAdjacentReads | Holds if | from Definition |