soot.dava
Class MethodCallFinder

java.lang.Object
  extended bysoot.dava.toolkits.base.AST.analysis.AnalysisAdapter
      extended bysoot.dava.toolkits.base.AST.analysis.DepthFirstAdapter
          extended bysoot.dava.MethodCallFinder
All Implemented Interfaces:
Analysis

public class MethodCallFinder
extends DepthFirstAdapter


Field Summary
 
Fields inherited from class soot.dava.toolkits.base.AST.analysis.DepthFirstAdapter
DEBUG
 
Constructor Summary
MethodCallFinder(boolean verbose, DavaStaticBlockCleaner cleaner)
           
MethodCallFinder(DavaStaticBlockCleaner cleaner)
           
 
Method Summary
 List createChangedBodyPart(InvokeStmt s, List body, ASTParentNodeFinder finder)
           
 List createNewSubBody(List orignalBody, List partNewBody, Object stmtSeqNode)
           
 List getSubBodyFromSingleSubBodyNode(ASTNode node)
           
 void inASTMethodNode(ASTMethodNode node)
           
 void inInvokeStmt(InvokeStmt s)
           
 boolean replaceSubBody(InvokeStmt s, List newChangedBodyPart, ASTParentNodeFinder finder)
           
 
Methods inherited from class soot.dava.toolkits.base.AST.analysis.DepthFirstAdapter
caseArrayRef, caseASTAndCondition, caseASTBinaryCondition, caseASTDoWhileNode, caseASTForLoopNode, caseASTIfElseNode, caseASTIfNode, caseASTLabeledBlockNode, caseASTMethodNode, caseASTOrCondition, caseASTStatementSequenceNode, caseASTSwitchNode, caseASTSynchronizedBlockNode, caseASTTryNode, caseASTUnaryCondition, caseASTUnconditionalLoopNode, caseASTWhileNode, caseBinopExpr, caseCastExpr, caseDefinitionStmt, caseDVariableDeclarationStmt, caseExpr, caseInstanceFieldRef, caseInstanceInvokeExpr, caseInstanceOfExpr, caseInvokeExpr, caseInvokeStmt, caseNewArrayExpr, caseNewMultiArrayExpr, caseRef, caseReturnStmt, caseStaticFieldRef, caseStmt, caseThrowStmt, caseType, caseUnopExpr, caseValue, debug, decideCaseExpr, decideCaseExprOrRef, decideCaseRef, inArrayRef, inASTAndCondition, inASTBinaryCondition, inASTDoWhileNode, inASTForLoopNode, inASTIfElseNode, inASTIfNode, inASTLabeledBlockNode, inASTOrCondition, inASTStatementSequenceNode, inASTSwitchNode, inASTSynchronizedBlockNode, inASTTryNode, inASTUnaryCondition, inASTUnconditionalLoopNode, inASTWhileNode, inBinopExpr, inCastExpr, inDefinitionStmt, inDVariableDeclarationStmt, inExpr, inInstanceFieldRef, inInstanceInvokeExpr, inInstanceOfExpr, inInvokeExpr, inNewArrayExpr, inNewMultiArrayExpr, inRef, inReturnStmt, inStaticFieldRef, inStmt, inThrowStmt, inType, inUnopExpr, inValue, normalRetrieving, outArrayRef, outASTAndCondition, outASTBinaryCondition, outASTDoWhileNode, outASTForLoopNode, outASTIfElseNode, outASTIfNode, outASTLabeledBlockNode, outASTMethodNode, outASTOrCondition, outASTStatementSequenceNode, outASTSwitchNode, outASTSynchronizedBlockNode, outASTTryNode, outASTUnaryCondition, outASTUnconditionalLoopNode, outASTWhileNode, outBinopExpr, outCastExpr, outDefinitionStmt, outDVariableDeclarationStmt, outExpr, outInstanceFieldRef, outInstanceInvokeExpr, outInstanceOfExpr, outInvokeExpr, outInvokeStmt, outNewArrayExpr, outNewMultiArrayExpr, outRef, outReturnStmt, outStaticFieldRef, outStmt, outThrowStmt, outType, outUnopExpr, outValue
 
Methods inherited from class soot.dava.toolkits.base.AST.analysis.AnalysisAdapter
defaultCase
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

MethodCallFinder

public MethodCallFinder(DavaStaticBlockCleaner cleaner)

MethodCallFinder

public MethodCallFinder(boolean verbose,
                        DavaStaticBlockCleaner cleaner)
Method Detail

inASTMethodNode

public void inASTMethodNode(ASTMethodNode node)
Overrides:
inASTMethodNode in class DepthFirstAdapter

inInvokeStmt

public void inInvokeStmt(InvokeStmt s)
Overrides:
inInvokeStmt in class DepthFirstAdapter

getSubBodyFromSingleSubBodyNode

public List getSubBodyFromSingleSubBodyNode(ASTNode node)

createNewSubBody

public List createNewSubBody(List orignalBody,
                             List partNewBody,
                             Object stmtSeqNode)

replaceSubBody

public boolean replaceSubBody(InvokeStmt s,
                              List newChangedBodyPart,
                              ASTParentNodeFinder finder)

createChangedBodyPart

public List createChangedBodyPart(InvokeStmt s,
                                  List body,
                                  ASTParentNodeFinder finder)