SandMark version 2.0


sandmark.obfuscate.boolsplitter.dtree
Class ArrayRefExpr

java.lang.Object
  |
  +--sandmark.obfuscate.boolsplitter.dtree.Node
        |
        +--sandmark.obfuscate.boolsplitter.dtree.Expr
              |
              +--sandmark.obfuscate.boolsplitter.dtree.DefExpr
                    |
                    +--sandmark.obfuscate.boolsplitter.dtree.MemExpr
                          |
                          +--sandmark.obfuscate.boolsplitter.dtree.MemRefExpr
                                |
                                +--sandmark.obfuscate.boolsplitter.dtree.ArrayRefExpr
All Implemented Interfaces:
java.lang.Cloneable

public class ArrayRefExpr
extends MemRefExpr

ArrayRefExpr represents an expression that references an element in an array.


Field Summary
(package private)  Expr array
           
(package private)  EDU.purdue.cs.bloat.editor.Type elementType
           
(package private)  Expr index
           
 
Fields inherited from class sandmark.obfuscate.boolsplitter.dtree.DefExpr
next, uses, version
 
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
ArrayRefExpr(Expr array, Expr index, EDU.purdue.cs.bloat.editor.Type elementType, EDU.purdue.cs.bloat.editor.Type type)
          Constructor.
 
Method Summary
 Expr array()
           
 java.lang.Object clone()
           
 EDU.purdue.cs.bloat.editor.Type elementType()
           
 boolean equalsExpr(Expr other)
          Compares this expression to another.
 int exprHashCode()
          Returns the hash code for this expresion.
 Expr index()
           
 void visit(TreeVisitor visitor)
           
 void visitForceChildren(TreeVisitor visitor)
          Visit the children of this node.
 
Methods inherited from class sandmark.obfuscate.boolsplitter.dtree.DefExpr
addUse, cleanupOnly, hasUse, isDef, removeUse, uses, version
 
Methods inherited from class sandmark.obfuscate.boolsplitter.dtree.Expr
comparator, copyInto, def, 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

array

Expr array

index

Expr index

elementType

EDU.purdue.cs.bloat.editor.Type elementType
Constructor Detail

ArrayRefExpr

public ArrayRefExpr(Expr array,
                    Expr index,
                    EDU.purdue.cs.bloat.editor.Type elementType,
                    EDU.purdue.cs.bloat.editor.Type type)
Constructor.

Parameters:
array - The array whose element we are indexing.
index - The index into the array.
elementType - The type of elements in array.
type - The type of this expression.
Method Detail

array

public Expr array()

index

public Expr index()

elementType

public EDU.purdue.cs.bloat.editor.Type elementType()

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

equalsExpr

public boolean equalsExpr(Expr other)
Description copied from class: Expr
Compares this expression to another.

Specified by:
equalsExpr in class Expr
Parameters:
other - Expr to which to compare this.

clone

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

SandMark version 2.0

Mon Jun 17 12:30:47 MST 2002