Import path
import codeql.ruby.dataflow.internal.SsaImpl
Predicates
| adjacentReadPair | Holds if the read at read2 is a read of the same SSA definition def as the read at read1, and read2 can be reached from read1 without passing through another non-pseudo read.
|
| adjacentReadPairExt | Holds if the read at read2 is a read of the same SSA definition def as the read at read1, and read2 can be reached from read1 without passing through another non-pseudo read.
|
| captureFlowIn | Holds if there is flow for a captured variable from the enclosing scope into a block. rb foo = 0 bar { puts foo }
|
| captureFlowOut | Holds if there is outgoing flow for a captured variable that is updated in a block. rb foo = 0 bar { foo += 10 } puts foo
|
| capturedCallWrite | Holds if the call call at index i in basic block bb may reach a callable that writes captured variable v.
|
| capturedEntryWrite | Holds if an entry definition is needed for captured variable v at index i in entry block bb.
|
| firstRead | Holds if the value defined at SSA definition def can reach a read at read, without passing through any other non-pseudo read.
|
| firstReadExt | Holds if the value defined at SSA definition def can reach a read at read, without passing through any other non-pseudo read.
|
| getARead | |
| lastRead | Holds if the read of def at read may be a last read. That is, read can either reach another definition of the underlying source variable or the end of the CFG scope, without passing through another non-pseudo read.
|
| lastRefBeforeRedefExt | Holds if the reference to def at index i in basic block bb can reach another definition next of the same underlying source variable, without passing through another write or non-pseudo read.
|
| phiHasInputFromBlock | |
| uncertainWriteDefinitionInput | |
| variableWriteActual | Holds if v is written at index i in basic block bb, and the corresponding AST write access is write.
|