EDU.purdue.cs.bloat.tree
Class ConstantExpr

java.lang.Object
  |
  +--EDU.purdue.cs.bloat.tree.Node
        |
        +--EDU.purdue.cs.bloat.tree.Expr
              |
              +--EDU.purdue.cs.bloat.tree.ConstantExpr

public class ConstantExpr
extends Expr
implements LeafExpr

ConstantExpr represents a constant expression. It is used when opcodes ldc, iinc, and getstatic are visited. It value must be an Integer, Long, Float, Double, or String.


Fields inherited from class EDU.purdue.cs.bloat.tree.Expr
type
 
Fields inherited from class EDU.purdue.cs.bloat.tree.Node
parent
 
Constructor Summary
ConstantExpr(java.lang.Object value, Type type)
          Constructor.
 
Method Summary
 java.lang.Object clone()
           
 boolean equalsExpr(Expr other)
          Compare this ConstantExpr to another Expr.
 int exprHashCode()
          Returns the hash code for this expresion.
 java.lang.Object value()
           
 void visit(TreeVisitor visitor)
           
 void visitForceChildren(TreeVisitor visitor)
          Visit the children of this node.
 
Methods inherited from class EDU.purdue.cs.bloat.tree.Expr
cleanupOnly, comparator, copyInto, def, isDef, setDef, setType, stmt, type
 
Methods inherited from class EDU.purdue.cs.bloat.tree.Node
block, cleanup, copyInto, hasParent, key, parent, replaceWith, replaceWith, setKey, setParent, setValueNumber, toString, valueNumber, visitChildren, visitOnly
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

ConstantExpr

public ConstantExpr(java.lang.Object value,
                    Type type)
Constructor.
Parameters:
value - The operand of the ldc instruction
type - The Type of the operand
Method Detail

value

public java.lang.Object value()
Returns:
The operand of the ldc instruction

visitForceChildren

public void visitForceChildren(TreeVisitor visitor)
Description copied from class: Node
Visit the children of this node. Not all Nodes will have children to visit.
Overrides:
visitForceChildren in class Node

visit

public void visit(TreeVisitor visitor)
Overrides:
visit in class Node

exprHashCode

public int exprHashCode()
Description copied from class: Expr
Returns the hash code for this expresion.
Overrides:
exprHashCode in class Expr
Returns:
A hash code for this expression.

equalsExpr

public boolean equalsExpr(Expr other)
Compare this ConstantExpr to another Expr.
Overrides:
equalsExpr in class Expr
Parameters:
other - An Expr to compare this to.
Returns:
True, if this and other are the same (that is, have the same contents).

clone

public java.lang.Object clone()
Overrides:
clone in class Expr