Class SSA::Ssa::PseudoDefinition

An SSA definition that has no actual semantics, but simply serves to merge or filter data flow.

Phi nodes are the canonical (and currently only) example.

Direct supertypes

Indirect supertypes

Known direct subtypes

Predicates

getAnInput

Gets an input of this pseudo definition.

Inherited predicates

definesAt

Holds if this SSA definition is at index i in basic block bb. Phi nodes and entry nodes (captured variables and fields/properties) are considered to be at index -1, while normal variable updates are at the index of the control flow node they wrap.

from Definition
getAFirstRead

Gets a read of the source variable underlying this SSA definition that can be reached from this SSA definition without passing through any other SSA definition or read. Example:

from Definition
getAFirstUncertainRead

Gets a first uncertain read of the source variable underlying this SSA definition. That is, a read that can be reached from this SSA definition without passing through any other reads or SSA definitions, except for phi nodes and uncertain updates. Example:

from Definition
getALastRead

Gets a last read of the source variable underlying this SSA definition. That is, a read that can reach the end of the enclosing callable, or another SSA definition for the source variable, without passing through any other read. Example:

from Definition
getARead

Gets a read of the source variable underlying this SSA definition that can be reached from this SSA definition without passing through any other SSA definitions. Example:

from Definition
getAReadAtNode

Gets a read of the source variable underlying this SSA definition at control flow node cfn that can be reached from this SSA definition without passing through any other SSA definitions. Example:

from Definition
getAnUltimateDefinition

Gets a definition that ultimately defines this SSA definition and is not itself a pseudo node. Example:

from Definition
getLocation

Gets the location of this SSA definition.

from Definition
getSourceVariable

Gets the source variable underlying this SSA definition.

from Definition
isLiveAtEndOfBlock

Holds is this SSA definition is live at the end of basic block bb. That is, this definition reaches the end of basic block bb, at which point it is still live, without crossing another SSA definition of the same source variable.

from Definition
isLiveOutRefParameterDefinition

Holds if this SSA definition assigns to out/ref parameter p, and the parameter may remain unchanged throughout the rest of the enclosing callable.

from Definition
toString

Gets a textual representation of this SSA definition.

from Definition

Charpred