soot.jimple
Class PointerStmtSwitch

java.lang.Object
  |
  +--soot.jimple.AbstractStmtSwitch
        |
        +--soot.jimple.PointerStmtSwitch

public abstract class PointerStmtSwitch
extends AbstractStmtSwitch


Constructor Summary
PointerStmtSwitch()
           
 
Method Summary
protected abstract  void caseAnyNewStmt(Local dest, Expr e)
          Any type of new statement (NewStmt, NewArrayStmt, NewMultiArrayStmt)
protected abstract  void caseArrayLoadStmt(Local dest, ArrayRef src)
          A statement of the form l1 = l2[i];
protected abstract  void caseArrayStoreStmt(ArrayRef dest, Local src)
          A statement of the form l1[i] = l2;
protected abstract  void caseAssignConstStmt(Value dest, Constant c)
          A statement of the form l = constant;
 void caseAssignStmt(AssignStmt s)
           
protected  void caseCastStmt(Local dest, Local src, CastExpr c)
          A statement of the form l = (cl) v;
protected  void caseCatchStmt(Local dest, CaughtExceptionRef cer)
          A catch statement
protected abstract  void caseCopyStmt(Local dest, Local src)
          A statement of the form l = v;
protected abstract  void caseGlobalLoadStmt(Local dest, StaticFieldRef src)
          A statement of the form l = cl.f;
protected abstract  void caseGlobalStoreStmt(StaticFieldRef dest, Local src)
          A statement of the form cl.f = l;
 void caseIdentityStmt(IdentityStmt s)
           
protected abstract  void caseIdentityStmt(Local dest, IdentityRef src)
          An identity statement assigning a parameter to a local.
 void caseInvokeStmt(InvokeStmt s)
           
protected abstract  void caseInvokeStmt(Local dest, InvokeExpr e)
          A method invocation.
protected abstract  void caseLoadStmt(Local dest, InstanceFieldRef src)
          A statement of the form l1 = l2.f;
protected  void caseNewArrayStmt(Local dest, NewArrayExpr e)
          A newarray statement
protected  void caseNewMultiArrayStmt(Local dest, NewMultiArrayExpr e)
          A anewarray statement
protected  void caseNewStmt(Local dest, NewExpr e)
          A new statement
protected  void caseReturnConstStmt(Constant val)
          A return statement returning a constant.
protected abstract  void caseReturnStmt(Local val)
          A return statement.
 void caseReturnStmt(ReturnStmt s)
           
 void caseReturnVoidStmt(ReturnVoidStmt s)
           
protected abstract  void caseStoreStmt(InstanceFieldRef dest, Local src)
          A statement of the form l1.f = l2;
protected  void caseThrowStmt(Local thrownException)
          A throw statement
 void caseThrowStmt(ThrowStmt s)
           
protected  void caseUninterestingStmt(Stmt s)
          Any other statement
 
Methods inherited from class soot.jimple.AbstractStmtSwitch
caseBreakpointStmt, caseEnterMonitorStmt, caseExitMonitorStmt, caseGotoStmt, caseIfStmt, caseLookupSwitchStmt, caseNopStmt, caseRetStmt, caseTableSwitchStmt, defaultCase, getResult, setResult
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

PointerStmtSwitch

public PointerStmtSwitch()
Method Detail

caseAssignConstStmt

protected abstract void caseAssignConstStmt(Value dest,
                                            Constant c)
A statement of the form l = constant;

caseCopyStmt

protected abstract void caseCopyStmt(Local dest,
                                     Local src)
A statement of the form l = v;

caseCastStmt

protected void caseCastStmt(Local dest,
                            Local src,
                            CastExpr c)
A statement of the form l = (cl) v;

caseIdentityStmt

protected abstract void caseIdentityStmt(Local dest,
                                         IdentityRef src)
An identity statement assigning a parameter to a local.

caseLoadStmt

protected abstract void caseLoadStmt(Local dest,
                                     InstanceFieldRef src)
A statement of the form l1 = l2.f;

caseStoreStmt

protected abstract void caseStoreStmt(InstanceFieldRef dest,
                                      Local src)
A statement of the form l1.f = l2;

caseArrayLoadStmt

protected abstract void caseArrayLoadStmt(Local dest,
                                          ArrayRef src)
A statement of the form l1 = l2[i];

caseArrayStoreStmt

protected abstract void caseArrayStoreStmt(ArrayRef dest,
                                           Local src)
A statement of the form l1[i] = l2;

caseGlobalLoadStmt

protected abstract void caseGlobalLoadStmt(Local dest,
                                           StaticFieldRef src)
A statement of the form l = cl.f;

caseGlobalStoreStmt

protected abstract void caseGlobalStoreStmt(StaticFieldRef dest,
                                            Local src)
A statement of the form cl.f = l;

caseReturnStmt

protected abstract void caseReturnStmt(Local val)
A return statement. e is null if a non-reference type is returned.

caseReturnConstStmt

protected void caseReturnConstStmt(Constant val)
A return statement returning a constant.

caseAnyNewStmt

protected abstract void caseAnyNewStmt(Local dest,
                                       Expr e)
Any type of new statement (NewStmt, NewArrayStmt, NewMultiArrayStmt)

caseNewStmt

protected void caseNewStmt(Local dest,
                           NewExpr e)
A new statement

caseNewArrayStmt

protected void caseNewArrayStmt(Local dest,
                                NewArrayExpr e)
A newarray statement

caseNewMultiArrayStmt

protected void caseNewMultiArrayStmt(Local dest,
                                     NewMultiArrayExpr e)
A anewarray statement

caseInvokeStmt

protected abstract void caseInvokeStmt(Local dest,
                                       InvokeExpr e)
A method invocation. dest is null if there is no reference type return value.

caseThrowStmt

protected void caseThrowStmt(Local thrownException)
A throw statement

caseCatchStmt

protected void caseCatchStmt(Local dest,
                             CaughtExceptionRef cer)
A catch statement

caseUninterestingStmt

protected void caseUninterestingStmt(Stmt s)
Any other statement

caseAssignStmt

public final void caseAssignStmt(AssignStmt s)
Overrides:
caseAssignStmt in class AbstractStmtSwitch

caseReturnStmt

public final void caseReturnStmt(ReturnStmt s)
Overrides:
caseReturnStmt in class AbstractStmtSwitch

caseReturnVoidStmt

public final void caseReturnVoidStmt(ReturnVoidStmt s)
Overrides:
caseReturnVoidStmt in class AbstractStmtSwitch

caseInvokeStmt

public final void caseInvokeStmt(InvokeStmt s)
Overrides:
caseInvokeStmt in class AbstractStmtSwitch

caseIdentityStmt

public final void caseIdentityStmt(IdentityStmt s)
Overrides:
caseIdentityStmt in class AbstractStmtSwitch

caseThrowStmt

public final void caseThrowStmt(ThrowStmt s)
Overrides:
caseThrowStmt in class AbstractStmtSwitch