soot
Class Type

java.lang.Object
  extended by soot.Type
All Implemented Interfaces:
Serializable, Numberable, Switchable
Direct Known Subclasses:
BottomType, Double2ndHalfType, DoubleWordType, ErroneousType, Long2ndHalfType, PrimType, RefLikeType, StmtAddressType, UnknownType, UnusuableType, VoidType, WordType

public abstract class Type
extends Object
implements Switchable, Serializable, Numberable

Represents types within Soot, eg int, java.lang.String.

See Also:
Serialized Form

Field Summary
protected  ArrayType arrayType
           
 
Constructor Summary
Type()
           
 
Method Summary
 void apply(Switch sw)
          Method required for use of Switchable.
 ArrayType getArrayType()
           
 int getNumber()
           
 ArrayType makeArrayType()
           
 Type merge(Type other, Scene cm)
          Returns the least common superclass of this type and other.
 void setArrayType(ArrayType at)
           
 void setNumber(int number)
           
static Type toMachineType(Type t)
          Converts the int-like types (short, byte, boolean and char) to IntType.
abstract  String toString()
          Returns a textual representation of this type.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

arrayType

protected ArrayType arrayType
Constructor Detail

Type

public Type()
Method Detail

toString

public abstract String toString()
Returns a textual representation of this type.

Overrides:
toString in class Object

toMachineType

public static Type toMachineType(Type t)
Converts the int-like types (short, byte, boolean and char) to IntType.


merge

public Type merge(Type other,
                  Scene cm)
Returns the least common superclass of this type and other.


apply

public void apply(Switch sw)
Method required for use of Switchable.

Specified by:
apply in interface Switchable

setArrayType

public void setArrayType(ArrayType at)

getArrayType

public ArrayType getArrayType()

makeArrayType

public ArrayType makeArrayType()

getNumber

public final int getNumber()
Specified by:
getNumber in interface Numberable

setNumber

public final void setNumber(int number)
Specified by:
setNumber in interface Numberable