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)