soot.dava.toolkits.base.AST.analysis
Class DepthFirstAdapter
java.lang.Object
soot.dava.toolkits.base.AST.analysis.AnalysisAdapter
soot.dava.toolkits.base.AST.analysis.DepthFirstAdapter
- All Implemented Interfaces:
- Analysis
- Direct Known Subclasses:
- AllDefinitionsFinder, AllVariableUses, AndAggregator, ASTCleaner, ASTCleanerTwo, ASTParentNodeFinder, ASTUsesAndDefs, BooleanConditionSimplification, ClosestAbruptTargetFinder, CopyPropagation, CPApplication, DecrementIncrementStmtCreation, DeInliningFinalFields, EliminateConditions, ExtraLabelNamesRemover, ForLoopCreator, IfElseSplitter, infoGatheringAnalysis, InitializationDeclarationShortcut, LabelToNodeMapper, LocalVariableCleaner, LoopStrengthener, MethodCallFinder, NewStringBufferSimplification, OrAggregatorFour, OrAggregatorOne, OrAggregatorTwo, PushLabeledBlockIn, ShortcutArrayInit, ShortcutIfGenerator, SimplifyConditions, SimplifyExpressions, StaticDefinitionFinder, SuperFirstStmtHandler, TypeCastingError, UnreachableCodeEliminator, UselessAbruptStmtRemover, UselessLabeledBlockRemover
public class DepthFirstAdapter
- extends AnalysisAdapter
|
Field Summary |
boolean |
DEBUG
|
| Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DEBUG
public boolean DEBUG
DepthFirstAdapter
public DepthFirstAdapter()
DepthFirstAdapter
public DepthFirstAdapter(boolean verbose)
inASTMethodNode
public void inASTMethodNode(ASTMethodNode node)
outASTMethodNode
public void outASTMethodNode(ASTMethodNode node)
caseASTMethodNode
public void caseASTMethodNode(ASTMethodNode node)
- Specified by:
caseASTMethodNode in interface Analysis- Overrides:
caseASTMethodNode in class AnalysisAdapter
inASTSynchronizedBlockNode
public void inASTSynchronizedBlockNode(ASTSynchronizedBlockNode node)
outASTSynchronizedBlockNode
public void outASTSynchronizedBlockNode(ASTSynchronizedBlockNode node)
caseASTSynchronizedBlockNode
public void caseASTSynchronizedBlockNode(ASTSynchronizedBlockNode node)
- Specified by:
caseASTSynchronizedBlockNode in interface Analysis- Overrides:
caseASTSynchronizedBlockNode in class AnalysisAdapter
inASTLabeledBlockNode
public void inASTLabeledBlockNode(ASTLabeledBlockNode node)
outASTLabeledBlockNode
public void outASTLabeledBlockNode(ASTLabeledBlockNode node)
caseASTLabeledBlockNode
public void caseASTLabeledBlockNode(ASTLabeledBlockNode node)
- Specified by:
caseASTLabeledBlockNode in interface Analysis- Overrides:
caseASTLabeledBlockNode in class AnalysisAdapter
inASTUnconditionalLoopNode
public void inASTUnconditionalLoopNode(ASTUnconditionalLoopNode node)
outASTUnconditionalLoopNode
public void outASTUnconditionalLoopNode(ASTUnconditionalLoopNode node)
caseASTUnconditionalLoopNode
public void caseASTUnconditionalLoopNode(ASTUnconditionalLoopNode node)
- Specified by:
caseASTUnconditionalLoopNode in interface Analysis- Overrides:
caseASTUnconditionalLoopNode in class AnalysisAdapter
inASTSwitchNode
public void inASTSwitchNode(ASTSwitchNode node)
outASTSwitchNode
public void outASTSwitchNode(ASTSwitchNode node)
caseASTSwitchNode
public void caseASTSwitchNode(ASTSwitchNode node)
- Specified by:
caseASTSwitchNode in interface Analysis- Overrides:
caseASTSwitchNode in class AnalysisAdapter
inASTIfNode
public void inASTIfNode(ASTIfNode node)
outASTIfNode
public void outASTIfNode(ASTIfNode node)
caseASTIfNode
public void caseASTIfNode(ASTIfNode node)
- Specified by:
caseASTIfNode in interface Analysis- Overrides:
caseASTIfNode in class AnalysisAdapter
inASTIfElseNode
public void inASTIfElseNode(ASTIfElseNode node)
outASTIfElseNode
public void outASTIfElseNode(ASTIfElseNode node)
caseASTIfElseNode
public void caseASTIfElseNode(ASTIfElseNode node)
- Specified by:
caseASTIfElseNode in interface Analysis- Overrides:
caseASTIfElseNode in class AnalysisAdapter
inASTWhileNode
public void inASTWhileNode(ASTWhileNode node)
outASTWhileNode
public void outASTWhileNode(ASTWhileNode node)
caseASTWhileNode
public void caseASTWhileNode(ASTWhileNode node)
- Specified by:
caseASTWhileNode in interface Analysis- Overrides:
caseASTWhileNode in class AnalysisAdapter
inASTForLoopNode
public void inASTForLoopNode(ASTForLoopNode node)
outASTForLoopNode
public void outASTForLoopNode(ASTForLoopNode node)
caseASTForLoopNode
public void caseASTForLoopNode(ASTForLoopNode node)
- Specified by:
caseASTForLoopNode in interface Analysis- Overrides:
caseASTForLoopNode in class AnalysisAdapter
inASTDoWhileNode
public void inASTDoWhileNode(ASTDoWhileNode node)
outASTDoWhileNode
public void outASTDoWhileNode(ASTDoWhileNode node)
caseASTDoWhileNode
public void caseASTDoWhileNode(ASTDoWhileNode node)
- Specified by:
caseASTDoWhileNode in interface Analysis- Overrides:
caseASTDoWhileNode in class AnalysisAdapter
inASTTryNode
public void inASTTryNode(ASTTryNode node)
outASTTryNode
public void outASTTryNode(ASTTryNode node)
caseASTTryNode
public void caseASTTryNode(ASTTryNode node)
- Specified by:
caseASTTryNode in interface Analysis- Overrides:
caseASTTryNode in class AnalysisAdapter
inASTUnaryCondition
public void inASTUnaryCondition(ASTUnaryCondition uc)
outASTUnaryCondition
public void outASTUnaryCondition(ASTUnaryCondition uc)
caseASTUnaryCondition
public void caseASTUnaryCondition(ASTUnaryCondition uc)
- Specified by:
caseASTUnaryCondition in interface Analysis- Overrides:
caseASTUnaryCondition in class AnalysisAdapter
inASTBinaryCondition
public void inASTBinaryCondition(ASTBinaryCondition bc)
outASTBinaryCondition
public void outASTBinaryCondition(ASTBinaryCondition bc)
caseASTBinaryCondition
public void caseASTBinaryCondition(ASTBinaryCondition bc)
- Specified by:
caseASTBinaryCondition in interface Analysis- Overrides:
caseASTBinaryCondition in class AnalysisAdapter
inASTAndCondition
public void inASTAndCondition(ASTAndCondition ac)
outASTAndCondition
public void outASTAndCondition(ASTAndCondition ac)
caseASTAndCondition
public void caseASTAndCondition(ASTAndCondition ac)
- Specified by:
caseASTAndCondition in interface Analysis- Overrides:
caseASTAndCondition in class AnalysisAdapter
inASTOrCondition
public void inASTOrCondition(ASTOrCondition oc)
outASTOrCondition
public void outASTOrCondition(ASTOrCondition oc)
caseASTOrCondition
public void caseASTOrCondition(ASTOrCondition oc)
- Specified by:
caseASTOrCondition in interface Analysis- Overrides:
caseASTOrCondition in class AnalysisAdapter
inType
public void inType(Type t)
outType
public void outType(Type t)
caseType
public void caseType(Type t)
- Specified by:
caseType in interface Analysis- Overrides:
caseType in class AnalysisAdapter
normalRetrieving
public void normalRetrieving(ASTNode node)
inASTStatementSequenceNode
public void inASTStatementSequenceNode(ASTStatementSequenceNode node)
outASTStatementSequenceNode
public void outASTStatementSequenceNode(ASTStatementSequenceNode node)
caseASTStatementSequenceNode
public void caseASTStatementSequenceNode(ASTStatementSequenceNode node)
- Specified by:
caseASTStatementSequenceNode in interface Analysis- Overrides:
caseASTStatementSequenceNode in class AnalysisAdapter
inDefinitionStmt
public void inDefinitionStmt(DefinitionStmt s)
outDefinitionStmt
public void outDefinitionStmt(DefinitionStmt s)
caseDefinitionStmt
public void caseDefinitionStmt(DefinitionStmt s)
- Specified by:
caseDefinitionStmt in interface Analysis- Overrides:
caseDefinitionStmt in class AnalysisAdapter
inReturnStmt
public void inReturnStmt(ReturnStmt s)
outReturnStmt
public void outReturnStmt(ReturnStmt s)
caseReturnStmt
public void caseReturnStmt(ReturnStmt s)
- Specified by:
caseReturnStmt in interface Analysis- Overrides:
caseReturnStmt in class AnalysisAdapter
inInvokeStmt
public void inInvokeStmt(InvokeStmt s)
outInvokeStmt
public void outInvokeStmt(InvokeStmt s)
caseInvokeStmt
public void caseInvokeStmt(InvokeStmt s)
- Specified by:
caseInvokeStmt in interface Analysis- Overrides:
caseInvokeStmt in class AnalysisAdapter
inThrowStmt
public void inThrowStmt(ThrowStmt s)
outThrowStmt
public void outThrowStmt(ThrowStmt s)
caseThrowStmt
public void caseThrowStmt(ThrowStmt s)
- Specified by:
caseThrowStmt in interface Analysis- Overrides:
caseThrowStmt in class AnalysisAdapter
inDVariableDeclarationStmt
public void inDVariableDeclarationStmt(DVariableDeclarationStmt s)
outDVariableDeclarationStmt
public void outDVariableDeclarationStmt(DVariableDeclarationStmt s)
caseDVariableDeclarationStmt
public void caseDVariableDeclarationStmt(DVariableDeclarationStmt s)
- Specified by:
caseDVariableDeclarationStmt in interface Analysis- Overrides:
caseDVariableDeclarationStmt in class AnalysisAdapter
inStmt
public void inStmt(Stmt s)
outStmt
public void outStmt(Stmt s)
caseStmt
public void caseStmt(Stmt s)
- Specified by:
caseStmt in interface Analysis- Overrides:
caseStmt in class AnalysisAdapter
caseExprOrRefValueBox
public void caseExprOrRefValueBox(ValueBox vb)
inExprOrRefValueBox
public void inExprOrRefValueBox(ValueBox vb)
outExprOrRefValueBox
public void outExprOrRefValueBox(ValueBox vb)
decideCaseExprOrRef
public void decideCaseExprOrRef(Value v)
inValue
public void inValue(Value v)
outValue
public void outValue(Value v)
caseValue
public void caseValue(Value v)
- Specified by:
caseValue in interface Analysis- Overrides:
caseValue in class AnalysisAdapter
inExpr
public void inExpr(Expr e)
outExpr
public void outExpr(Expr e)
caseExpr
public void caseExpr(Expr e)
- Specified by:
caseExpr in interface Analysis- Overrides:
caseExpr in class AnalysisAdapter
inRef
public void inRef(Ref r)
outRef
public void outRef(Ref r)
caseRef
public void caseRef(Ref r)
- Specified by:
caseRef in interface Analysis- Overrides:
caseRef in class AnalysisAdapter
decideCaseExpr
public void decideCaseExpr(Expr e)
inBinopExpr
public void inBinopExpr(BinopExpr be)
outBinopExpr
public void outBinopExpr(BinopExpr be)
caseBinopExpr
public void caseBinopExpr(BinopExpr be)
- Specified by:
caseBinopExpr in interface Analysis- Overrides:
caseBinopExpr in class AnalysisAdapter
inUnopExpr
public void inUnopExpr(UnopExpr ue)
outUnopExpr
public void outUnopExpr(UnopExpr ue)
caseUnopExpr
public void caseUnopExpr(UnopExpr ue)
- Specified by:
caseUnopExpr in interface Analysis- Overrides:
caseUnopExpr in class AnalysisAdapter
inNewArrayExpr
public void inNewArrayExpr(NewArrayExpr nae)
outNewArrayExpr
public void outNewArrayExpr(NewArrayExpr nae)
caseNewArrayExpr
public void caseNewArrayExpr(NewArrayExpr nae)
- Specified by:
caseNewArrayExpr in interface Analysis- Overrides:
caseNewArrayExpr in class AnalysisAdapter
inNewMultiArrayExpr
public void inNewMultiArrayExpr(NewMultiArrayExpr nmae)
outNewMultiArrayExpr
public void outNewMultiArrayExpr(NewMultiArrayExpr nmae)
caseNewMultiArrayExpr
public void caseNewMultiArrayExpr(NewMultiArrayExpr nmae)
- Specified by:
caseNewMultiArrayExpr in interface Analysis- Overrides:
caseNewMultiArrayExpr in class AnalysisAdapter
inInstanceOfExpr
public void inInstanceOfExpr(InstanceOfExpr ioe)
outInstanceOfExpr
public void outInstanceOfExpr(InstanceOfExpr ioe)
caseInstanceOfExpr
public void caseInstanceOfExpr(InstanceOfExpr ioe)
- Specified by:
caseInstanceOfExpr in interface Analysis- Overrides:
caseInstanceOfExpr in class AnalysisAdapter
inInvokeExpr
public void inInvokeExpr(InvokeExpr ie)
outInvokeExpr
public void outInvokeExpr(InvokeExpr ie)
caseInvokeExpr
public void caseInvokeExpr(InvokeExpr ie)
- Specified by:
caseInvokeExpr in interface Analysis- Overrides:
caseInvokeExpr in class AnalysisAdapter
inInstanceInvokeExpr
public void inInstanceInvokeExpr(InstanceInvokeExpr iie)
outInstanceInvokeExpr
public void outInstanceInvokeExpr(InstanceInvokeExpr iie)
caseInstanceInvokeExpr
public void caseInstanceInvokeExpr(InstanceInvokeExpr iie)
- Specified by:
caseInstanceInvokeExpr in interface Analysis- Overrides:
caseInstanceInvokeExpr in class AnalysisAdapter
inCastExpr
public void inCastExpr(CastExpr ce)
outCastExpr
public void outCastExpr(CastExpr ce)
caseCastExpr
public void caseCastExpr(CastExpr ce)
- Specified by:
caseCastExpr in interface Analysis- Overrides:
caseCastExpr in class AnalysisAdapter
decideCaseRef
public void decideCaseRef(Ref r)
inArrayRef
public void inArrayRef(ArrayRef ar)
outArrayRef
public void outArrayRef(ArrayRef ar)
caseArrayRef
public void caseArrayRef(ArrayRef ar)
- Specified by:
caseArrayRef in interface Analysis- Overrides:
caseArrayRef in class AnalysisAdapter
inInstanceFieldRef
public void inInstanceFieldRef(InstanceFieldRef ifr)
outInstanceFieldRef
public void outInstanceFieldRef(InstanceFieldRef ifr)
caseInstanceFieldRef
public void caseInstanceFieldRef(InstanceFieldRef ifr)
- Specified by:
caseInstanceFieldRef in interface Analysis- Overrides:
caseInstanceFieldRef in class AnalysisAdapter
inStaticFieldRef
public void inStaticFieldRef(StaticFieldRef sfr)
outStaticFieldRef
public void outStaticFieldRef(StaticFieldRef sfr)
caseStaticFieldRef
public void caseStaticFieldRef(StaticFieldRef sfr)
- Specified by:
caseStaticFieldRef in interface Analysis- Overrides:
caseStaticFieldRef in class AnalysisAdapter
debug
public void debug(String className,
String methodName,
String debug)