soot.sootify
Class ValueTemplatePrinter

java.lang.Object
  extended by soot.sootify.ValueTemplatePrinter
All Implemented Interfaces:
ConstantSwitch, ExprSwitch, JimpleValueSwitch, RefSwitch, Switch

public class ValueTemplatePrinter
extends Object
implements JimpleValueSwitch


Constructor Summary
ValueTemplatePrinter(TemplatePrinter p)
           
 
Method Summary
 void caseAddExpr(AddExpr v)
           
 void caseAndExpr(AndExpr v)
           
 void caseArrayRef(ArrayRef v)
           
 void caseCastExpr(CastExpr v)
           
 void caseCaughtExceptionRef(CaughtExceptionRef v)
           
 void caseClassConstant(ClassConstant v)
           
 void caseCmpExpr(CmpExpr v)
           
 void caseCmpgExpr(CmpgExpr v)
           
 void caseCmplExpr(CmplExpr v)
           
 void caseDivExpr(DivExpr v)
           
 void caseDoubleConstant(DoubleConstant v)
           
 void caseDynamicInvokeExpr(DynamicInvokeExpr v)
           
 void caseEqExpr(EqExpr v)
           
 void caseFloatConstant(FloatConstant v)
           
 void caseGeExpr(GeExpr v)
           
 void caseGtExpr(GtExpr v)
           
 void caseInstanceFieldRef(InstanceFieldRef v)
           
 void caseInstanceOfExpr(InstanceOfExpr v)
           
 void caseIntConstant(IntConstant v)
           
 void caseInterfaceInvokeExpr(InterfaceInvokeExpr v)
           
 void caseLeExpr(LeExpr v)
           
 void caseLengthExpr(LengthExpr v)
           
 void caseLocal(Local l)
           
 void caseLongConstant(LongConstant v)
           
 void caseLtExpr(LtExpr v)
           
 void caseMulExpr(MulExpr v)
           
 void caseNeExpr(NeExpr v)
           
 void caseNegExpr(NegExpr v)
           
 void caseNewArrayExpr(NewArrayExpr v)
           
 void caseNewExpr(NewExpr v)
           
 void caseNewMultiArrayExpr(NewMultiArrayExpr v)
           
 void caseNullConstant(NullConstant v)
           
 void caseOrExpr(OrExpr v)
           
 void caseParameterRef(ParameterRef v)
           
 void caseRemExpr(RemExpr v)
           
 void caseShlExpr(ShlExpr v)
           
 void caseShrExpr(ShrExpr v)
           
 void caseSpecialInvokeExpr(SpecialInvokeExpr v)
           
 void caseStaticFieldRef(StaticFieldRef v)
           
 void caseStaticInvokeExpr(StaticInvokeExpr v)
           
 void caseStringConstant(StringConstant v)
           
 void caseSubExpr(SubExpr v)
           
 void caseThisRef(ThisRef v)
           
 void caseUshrExpr(UshrExpr v)
           
 void caseVirtualInvokeExpr(VirtualInvokeExpr v)
           
 void caseXorExpr(XorExpr v)
           
 void defaultCase(Object object)
           
 String getLastAssignedVarName()
           
 String printValueAssignment(Value value, String varName)
           
 void suggestVariableName(String name)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ValueTemplatePrinter

public ValueTemplatePrinter(TemplatePrinter p)
Method Detail

printValueAssignment

public String printValueAssignment(Value value,
                                   String varName)

suggestVariableName

public void suggestVariableName(String name)

getLastAssignedVarName

public String getLastAssignedVarName()

caseDoubleConstant

public void caseDoubleConstant(DoubleConstant v)
Specified by:
caseDoubleConstant in interface ConstantSwitch

caseFloatConstant

public void caseFloatConstant(FloatConstant v)
Specified by:
caseFloatConstant in interface ConstantSwitch

caseIntConstant

public void caseIntConstant(IntConstant v)
Specified by:
caseIntConstant in interface ConstantSwitch

caseLongConstant

public void caseLongConstant(LongConstant v)
Specified by:
caseLongConstant in interface ConstantSwitch

caseNullConstant

public void caseNullConstant(NullConstant v)
Specified by:
caseNullConstant in interface ConstantSwitch

caseStringConstant

public void caseStringConstant(StringConstant v)
Specified by:
caseStringConstant in interface ConstantSwitch

caseClassConstant

public void caseClassConstant(ClassConstant v)
Specified by:
caseClassConstant in interface ConstantSwitch

caseAddExpr

public void caseAddExpr(AddExpr v)
Specified by:
caseAddExpr in interface ExprSwitch

caseAndExpr

public void caseAndExpr(AndExpr v)
Specified by:
caseAndExpr in interface ExprSwitch

caseCmpExpr

public void caseCmpExpr(CmpExpr v)
Specified by:
caseCmpExpr in interface ExprSwitch

caseCmpgExpr

public void caseCmpgExpr(CmpgExpr v)
Specified by:
caseCmpgExpr in interface ExprSwitch

caseCmplExpr

public void caseCmplExpr(CmplExpr v)
Specified by:
caseCmplExpr in interface ExprSwitch

caseDivExpr

public void caseDivExpr(DivExpr v)
Specified by:
caseDivExpr in interface ExprSwitch

caseEqExpr

public void caseEqExpr(EqExpr v)
Specified by:
caseEqExpr in interface ExprSwitch

caseNeExpr

public void caseNeExpr(NeExpr v)
Specified by:
caseNeExpr in interface ExprSwitch

caseGeExpr

public void caseGeExpr(GeExpr v)
Specified by:
caseGeExpr in interface ExprSwitch

caseGtExpr

public void caseGtExpr(GtExpr v)
Specified by:
caseGtExpr in interface ExprSwitch

caseLeExpr

public void caseLeExpr(LeExpr v)
Specified by:
caseLeExpr in interface ExprSwitch

caseLtExpr

public void caseLtExpr(LtExpr v)
Specified by:
caseLtExpr in interface ExprSwitch

caseMulExpr

public void caseMulExpr(MulExpr v)
Specified by:
caseMulExpr in interface ExprSwitch

caseOrExpr

public void caseOrExpr(OrExpr v)
Specified by:
caseOrExpr in interface ExprSwitch

caseRemExpr

public void caseRemExpr(RemExpr v)
Specified by:
caseRemExpr in interface ExprSwitch

caseShlExpr

public void caseShlExpr(ShlExpr v)
Specified by:
caseShlExpr in interface ExprSwitch

caseShrExpr

public void caseShrExpr(ShrExpr v)
Specified by:
caseShrExpr in interface ExprSwitch

caseUshrExpr

public void caseUshrExpr(UshrExpr v)
Specified by:
caseUshrExpr in interface ExprSwitch

caseSubExpr

public void caseSubExpr(SubExpr v)
Specified by:
caseSubExpr in interface ExprSwitch

caseXorExpr

public void caseXorExpr(XorExpr v)
Specified by:
caseXorExpr in interface ExprSwitch

caseInterfaceInvokeExpr

public void caseInterfaceInvokeExpr(InterfaceInvokeExpr v)
Specified by:
caseInterfaceInvokeExpr in interface ExprSwitch

caseSpecialInvokeExpr

public void caseSpecialInvokeExpr(SpecialInvokeExpr v)
Specified by:
caseSpecialInvokeExpr in interface ExprSwitch

caseStaticInvokeExpr

public void caseStaticInvokeExpr(StaticInvokeExpr v)
Specified by:
caseStaticInvokeExpr in interface ExprSwitch

caseVirtualInvokeExpr

public void caseVirtualInvokeExpr(VirtualInvokeExpr v)
Specified by:
caseVirtualInvokeExpr in interface ExprSwitch

caseDynamicInvokeExpr

public void caseDynamicInvokeExpr(DynamicInvokeExpr v)
Specified by:
caseDynamicInvokeExpr in interface ExprSwitch

caseCastExpr

public void caseCastExpr(CastExpr v)
Specified by:
caseCastExpr in interface ExprSwitch

caseInstanceOfExpr

public void caseInstanceOfExpr(InstanceOfExpr v)
Specified by:
caseInstanceOfExpr in interface ExprSwitch

caseNewArrayExpr

public void caseNewArrayExpr(NewArrayExpr v)
Specified by:
caseNewArrayExpr in interface ExprSwitch

caseNewMultiArrayExpr

public void caseNewMultiArrayExpr(NewMultiArrayExpr v)
Specified by:
caseNewMultiArrayExpr in interface ExprSwitch

caseNewExpr

public void caseNewExpr(NewExpr v)
Specified by:
caseNewExpr in interface ExprSwitch

caseLengthExpr

public void caseLengthExpr(LengthExpr v)
Specified by:
caseLengthExpr in interface ExprSwitch

caseNegExpr

public void caseNegExpr(NegExpr v)
Specified by:
caseNegExpr in interface ExprSwitch

caseArrayRef

public void caseArrayRef(ArrayRef v)
Specified by:
caseArrayRef in interface RefSwitch

caseStaticFieldRef

public void caseStaticFieldRef(StaticFieldRef v)
Specified by:
caseStaticFieldRef in interface RefSwitch

caseInstanceFieldRef

public void caseInstanceFieldRef(InstanceFieldRef v)
Specified by:
caseInstanceFieldRef in interface RefSwitch

caseParameterRef

public void caseParameterRef(ParameterRef v)
Specified by:
caseParameterRef in interface RefSwitch

caseCaughtExceptionRef

public void caseCaughtExceptionRef(CaughtExceptionRef v)
Specified by:
caseCaughtExceptionRef in interface RefSwitch

caseThisRef

public void caseThisRef(ThisRef v)
Specified by:
caseThisRef in interface RefSwitch

caseLocal

public void caseLocal(Local l)
Specified by:
caseLocal in interface JimpleValueSwitch

defaultCase

public void defaultCase(Object object)
Specified by:
defaultCase in interface ConstantSwitch
Specified by:
defaultCase in interface ExprSwitch
Specified by:
defaultCase in interface RefSwitch