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()