SandMark version 2.0


sandmark.obfuscate.boolsplitter.dtree
Class ConstantExpr

java.lang.Object
  |
  +--sandmark.obfuscate.boolsplitter.dtree.Node
        |
        +--sandmark.obfuscate.boolsplitter.dtree.Expr
              |
              +--sandmark.obfuscate.boolsplitter.dtree.ConstantExpr
All Implemented Interfaces:
java.lang.Cloneable, LeafExpr

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.


Field Summary
(package private)  java.lang.Object value
           
 
Fields inherited from class sandmark.obfuscate.boolsplitter.dtree.Expr
B, BARRAY, BOOL, BOOLARRAY, range, type, UNDEF
 
Fields inherited from class sandmark.obfuscate.boolsplitter.dtree.Node
key, parent, valueNumber
 
Constructor Summary
ConstantExpr(java.lang.Object value, EDU.purdue.cs.bloat.editor.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 sandmark.obfuscate.boolsplitter.dtree.Expr
cleanupOnly, comparator, copyInto, def, isDef, mergeRange, setDef, setType, stmt, type
 
Methods inherited from class sandmark.obfuscate.boolsplitter.dtree.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
 

Field Detail

value

java.lang.Object value
Constructor Detail

ConstantExpr

public ConstantExpr(java.lang.Object value,
                    EDU.purdue.cs.bloat.editor.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.

Specified by:
visitForceChildren in class Node

visit

public void visit(TreeVisitor visitor)
Specified by:
visit in class Node

exprHashCode

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

Specified by:
exprHashCode in class Expr
Returns:
A hash code for this expression.

equalsExpr

public boolean equalsExpr(Expr other)
Compare this ConstantExpr to another Expr.

Specified by:
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()
Specified by:
clone in class Expr

SandMark version 2.0

Mon Jun 17 12:30:47 MST 2002