soot.jimple.internal
Class AbstractNewMultiArrayExpr

java.lang.Object
  extended by soot.jimple.internal.AbstractNewMultiArrayExpr
All Implemented Interfaces:
Serializable, EquivTo, AnyNewExpr, ConvertToBaf, Expr, NewMultiArrayExpr, Switchable, Value
Direct Known Subclasses:
DNewMultiArrayExpr, GNewMultiArrayExpr, JNewMultiArrayExpr

public abstract class AbstractNewMultiArrayExpr
extends Object
implements NewMultiArrayExpr, ConvertToBaf

See Also:
Serialized Form

Field Summary
protected  ValueBox[] sizeBoxes
           
 
Constructor Summary
protected AbstractNewMultiArrayExpr(ArrayType type, ValueBox[] sizeBoxes)
           
 
Method Summary
 void apply(Switch sw)
          Called when this object is visited.
abstract  Object clone()
          Returns a clone of this Value.
 void convertToBaf(JimpleToBafContext context, List<Unit> out)
           
 int equivHashCode()
          Returns a hash code for this object, consistent with structural equality.
 boolean equivTo(Object o)
          Returns true if this object is equivalent to o.
 ArrayType getBaseType()
           
 Value getSize(int index)
           
 ValueBox getSizeBox(int index)
           
 int getSizeCount()
           
 List getSizes()
           
 Type getType()
          Returns the Soot type of this Value.
 List getUseBoxes()
          Returns a List of boxes corresponding to Values which are used by (ie contained within) this Value.
 void setBaseType(ArrayType baseType)
           
 void setSize(int index, Value size)
           
 String toString()
           
 void toString(UnitPrinter up)
           
 
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

sizeBoxes

protected ValueBox[] sizeBoxes
Constructor Detail

AbstractNewMultiArrayExpr

protected AbstractNewMultiArrayExpr(ArrayType type,
                                    ValueBox[] sizeBoxes)
Method Detail

clone

public abstract Object clone()
Description copied from interface: Value
Returns a clone of this Value.

Specified by:
clone in interface Value
Overrides:
clone in class Object

equivTo

public boolean equivTo(Object o)
Description copied from interface: EquivTo
Returns true if this object is equivalent to o.

Specified by:
equivTo in interface EquivTo

equivHashCode

public int equivHashCode()
Returns a hash code for this object, consistent with structural equality.

Specified by:
equivHashCode in interface EquivTo

toString

public String toString()
Overrides:
toString in class Object

toString

public void toString(UnitPrinter up)
Specified by:
toString in interface Value

getBaseType

public ArrayType getBaseType()
Specified by:
getBaseType in interface NewMultiArrayExpr

setBaseType

public void setBaseType(ArrayType baseType)
Specified by:
setBaseType in interface NewMultiArrayExpr

getSizeBox

public ValueBox getSizeBox(int index)
Specified by:
getSizeBox in interface NewMultiArrayExpr

getSizeCount

public int getSizeCount()
Specified by:
getSizeCount in interface NewMultiArrayExpr

getSize

public Value getSize(int index)
Specified by:
getSize in interface NewMultiArrayExpr

getSizes

public List getSizes()
Specified by:
getSizes in interface NewMultiArrayExpr

setSize

public void setSize(int index,
                    Value size)
Specified by:
setSize in interface NewMultiArrayExpr

getUseBoxes

public List getUseBoxes()
Description copied from interface: Value
Returns a List of boxes corresponding to Values which are used by (ie contained within) this Value.

Specified by:
getUseBoxes in interface Value

getType

public Type getType()
Description copied from interface: Value
Returns the Soot type of this Value.

Specified by:
getType in interface NewMultiArrayExpr
Specified by:
getType in interface Value

apply

public void apply(Switch sw)
Description copied from interface: Switchable
Called when this object is visited.

Specified by:
apply in interface NewMultiArrayExpr
Specified by:
apply in interface Switchable

convertToBaf

public void convertToBaf(JimpleToBafContext context,
                         List<Unit> out)
Specified by:
convertToBaf in interface ConvertToBaf