soot.dava.toolkits.base.AST.traversals
Class ASTUsesAndDefs
java.lang.Object
soot.dava.toolkits.base.AST.analysis.AnalysisAdapter
soot.dava.toolkits.base.AST.analysis.DepthFirstAdapter
soot.dava.toolkits.base.AST.traversals.ASTUsesAndDefs
- All Implemented Interfaces:
- Analysis
public class ASTUsesAndDefs
- extends DepthFirstAdapter
Field Summary |
static boolean |
DEBUG
|
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, caseExprOrRefValueBox, caseInstanceFieldRef, caseInstanceInvokeExpr, caseInstanceOfExpr, caseInvokeExpr, caseInvokeStmt, caseNewArrayExpr, caseNewMultiArrayExpr, caseRef, caseReturnStmt, caseStaticFieldRef, caseStmt, caseThrowStmt, caseType, caseUnopExpr, caseValue, debug, decideCaseExpr, decideCaseExprOrRef, decideCaseRef, inArrayRef, inASTAndCondition, inASTBinaryCondition, inASTLabeledBlockNode, inASTMethodNode, inASTOrCondition, inASTTryNode, inASTUnaryCondition, inASTUnconditionalLoopNode, inBinopExpr, inCastExpr, inDefinitionStmt, inDVariableDeclarationStmt, inExpr, inExprOrRefValueBox, inInstanceFieldRef, inInstanceInvokeExpr, inInstanceOfExpr, inInvokeExpr, inInvokeStmt, inNewArrayExpr, inNewMultiArrayExpr, inRef, inReturnStmt, inStaticFieldRef, inStmt, inThrowStmt, inType, inUnopExpr, inValue, normalRetrieving, outArrayRef, outASTAndCondition, outASTBinaryCondition, outASTDoWhileNode, outASTForLoopNode, outASTIfElseNode, outASTIfNode, outASTLabeledBlockNode, outASTOrCondition, outASTStatementSequenceNode, outASTSwitchNode, outASTSynchronizedBlockNode, outASTTryNode, outASTUnaryCondition, outASTUnconditionalLoopNode, outASTWhileNode, outBinopExpr, outCastExpr, outDefinitionStmt, outDVariableDeclarationStmt, outExpr, outExprOrRefValueBox, outInstanceFieldRef, outInstanceInvokeExpr, outInstanceOfExpr, outInvokeExpr, outInvokeStmt, outNewArrayExpr, outNewMultiArrayExpr, outRef, outReturnStmt, outStaticFieldRef, outStmt, outThrowStmt, outType, outUnopExpr, outValue |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
DEBUG
public static boolean DEBUG
ASTUsesAndDefs
public ASTUsesAndDefs(ASTNode AST)
ASTUsesAndDefs
public ASTUsesAndDefs(boolean verbose,
ASTNode AST)
checkStatementUses
public void checkStatementUses(Stmt s,
Object useNodeOrStatement)
createUDDUChain
public void createUDDUChain(Local local,
Object useNodeOrStatement)
getUseList
public List<Value> getUseList(ASTCondition cond)
checkConditionalUses
public void checkConditionalUses(ASTCondition cond,
ASTNode node)
inASTSwitchNode
public void inASTSwitchNode(ASTSwitchNode node)
- Overrides:
inASTSwitchNode
in class DepthFirstAdapter
inASTSynchronizedBlockNode
public void inASTSynchronizedBlockNode(ASTSynchronizedBlockNode node)
- Overrides:
inASTSynchronizedBlockNode
in class DepthFirstAdapter
inASTIfNode
public void inASTIfNode(ASTIfNode node)
- Overrides:
inASTIfNode
in class DepthFirstAdapter
inASTIfElseNode
public void inASTIfElseNode(ASTIfElseNode node)
- Overrides:
inASTIfElseNode
in class DepthFirstAdapter
inASTWhileNode
public void inASTWhileNode(ASTWhileNode node)
- Overrides:
inASTWhileNode
in class DepthFirstAdapter
inASTDoWhileNode
public void inASTDoWhileNode(ASTDoWhileNode node)
- Overrides:
inASTDoWhileNode
in class DepthFirstAdapter
inASTForLoopNode
public void inASTForLoopNode(ASTForLoopNode node)
- Overrides:
inASTForLoopNode
in class DepthFirstAdapter
inASTStatementSequenceNode
public void inASTStatementSequenceNode(ASTStatementSequenceNode node)
- Overrides:
inASTStatementSequenceNode
in class DepthFirstAdapter
getUDChain
public List getUDChain(Object node)
getDUChain
public List getDUChain(Object node)
getDUHashMap
public HashMap<Object,List> getDUHashMap()
outASTMethodNode
public void outASTMethodNode(ASTMethodNode node)
- Overrides:
outASTMethodNode
in class DepthFirstAdapter
print
public void print()