Node represents a node in an expression tree. Each Node has a value number
and a key associated with it. The value number is used to eliminate
statements and expressions that have the same value (PRE). Statements and
expressions of the same value will be mapped to the same value number.
See Also:Expr See Also:Stmt See Also:Tree
Cleans up this node so that it is independent of the expression tree in
which it resides. This is usually performed before a Node is moved from
one part of an expression tree to another.
Traverse the Tree starting at this Node. Remove the parent of each node
and perform any Node-specific cleanup (see cleanupOnly). Sets various
pointers to null so that they eventually may be garbage collected.
A Node's key represents an integer value that can be used by an algorithm
to mark this node. For instance, when dead code elimination is performed
a Node is marked as DEAD or ALIVE.
Replaces this node with another and perform cleanup.
replaceWith
public void replaceWith(Node node, boolean cleanup)(Code)
Replaces this Node with node in its (this's) tree.
Parameters: node - The Node with which to replace. Parameters: cleanup - Do we perform cleanup on the tree?