Package soot
Class AbstractJasminClass
- java.lang.Object
-
- soot.AbstractJasminClass
-
- Direct Known Subclasses:
JasminClass,JasminClass
public abstract class AbstractJasminClass extends Object
-
-
Field Summary
Fields Modifier and Type Field Description protected Map<Block,Integer>blockToLogicalStackHeightprotected Map<Block,Integer>blockToStackHeightprotected List<String>codeprotected intcurrentStackHeightprotected Map<Object,Integer>groupToColorCountprotected booleanisEmittingMethodCodeprotected booleanisNextGotoAJsrprotected intlabelCountprotected Map<Local,Integer>localToColorprotected Map<Local,Object>localToGroupprotected Map<Local,Integer>localToSlotprotected intmaxStackHeightprotected intreturnAddressSlotprotected Map<Unit,Integer>subroutineToReturnAddressSlotprotected Map<Unit,String>unitToLabel
-
Constructor Summary
Constructors Constructor Description AbstractJasminClass(SootClass sootClass)
-
Method Summary
All Methods Static Methods Instance Methods Abstract Methods Concrete Methods Modifier and Type Method Description static intargCountOf(SootMethodRef m)protected voidassignColorsToLocals(Body body)protected StringdoubleToString(double d)protected StringdoubleToString(DoubleConstant v)protected voidemit(String s)protected voidemitMethod(SootMethod method)protected abstract voidemitMethodBody(SootMethod method)protected StringfloatToString(float d)protected StringfloatToString(FloatConstant v)static StringjasminDescriptorOf(SootMethodRef m)static StringjasminDescriptorOf(Type type)protected voidokayEmit(String s)voidprint(PrintWriter out)static intsizeOfType(Type t)static Stringslashify(String s)
-
-
-
Field Detail
-
isEmittingMethodCode
protected boolean isEmittingMethodCode
-
labelCount
protected int labelCount
-
isNextGotoAJsr
protected boolean isNextGotoAJsr
-
returnAddressSlot
protected int returnAddressSlot
-
currentStackHeight
protected int currentStackHeight
-
maxStackHeight
protected int maxStackHeight
-
-
Constructor Detail
-
AbstractJasminClass
public AbstractJasminClass(SootClass sootClass)
-
-
Method Detail
-
sizeOfType
public static int sizeOfType(Type t)
-
argCountOf
public static int argCountOf(SootMethodRef m)
-
jasminDescriptorOf
public static String jasminDescriptorOf(SootMethodRef m)
-
emit
protected void emit(String s)
-
okayEmit
protected void okayEmit(String s)
-
assignColorsToLocals
protected void assignColorsToLocals(Body body)
-
emitMethod
protected void emitMethod(SootMethod method)
-
emitMethodBody
protected abstract void emitMethodBody(SootMethod method)
-
print
public void print(PrintWriter out)
-
doubleToString
protected String doubleToString(DoubleConstant v)
-
doubleToString
protected String doubleToString(double d)
-
floatToString
protected String floatToString(FloatConstant v)
-
floatToString
protected String floatToString(float d)
-
-