soot.dava.toolkits.base.AST.structuredAnalysis
Class ASTUsesAndDefs

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

public class ASTUsesAndDefs
extends DepthFirstAdapter


Constructor Summary
ASTUsesAndDefs(ASTNode AST)
           
ASTUsesAndDefs(boolean verbose, ASTNode AST)
           
 
Method Summary
 void checkConditionalUses(ASTCondition cond, ASTNode node)
           
 void checkStatementUses(Stmt s, Object useNodeOrStatement)
           
 void createUDDUChain(Local local, Object useNodeOrStatement)
           
 List getDUChain(Object node)
           
 HashMap getDUHashMap()
           
 List getUDChain(Object node)
           
 List getUseList(ASTCondition cond)
           
 List getUsesFromBoxes(List useBoxes)
           
 void inASTDoWhileNode(ASTDoWhileNode node)
           
 void inASTForLoopNode(ASTForLoopNode node)
           
 void inASTIfElseNode(ASTIfElseNode node)
           
 void inASTIfNode(ASTIfNode node)
           
 void inASTStatementSequenceNode(ASTStatementSequenceNode node)
           
 void inASTSwitchNode(ASTSwitchNode node)
           
 void inASTSynchronizedBlockNode(ASTSynchronizedBlockNode node)
           
 void inASTWhileNode(ASTWhileNode node)
           
 void print()
           
 
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, caseExpr, caseInstanceFieldRef, caseInstanceInvokeExpr, caseInstanceOfExpr, caseInvokeExpr, caseInvokeStmt, caseNewArrayExpr, caseNewMultiArrayExpr, caseRef, caseReturnStmt, caseStaticFieldRef, caseStmt, caseThrowStmt, caseType, caseUnopExpr, caseValue, decideCaseExpr, decideCaseExprOrRef, decideCaseRef, inArrayRef, inASTAndCondition, inASTBinaryCondition, inASTLabeledBlockNode, inASTMethodNode, inASTOrCondition, inASTTryNode, inASTUnaryCondition, inASTUnconditionalLoopNode, inBinopExpr, inCastExpr, inDefinitionStmt, inExpr, inInstanceFieldRef, inInstanceInvokeExpr, inInstanceOfExpr, inInvokeExpr, inInvokeStmt, 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, 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

ASTUsesAndDefs

public ASTUsesAndDefs(ASTNode AST)

ASTUsesAndDefs

public ASTUsesAndDefs(boolean verbose,
                      ASTNode AST)
Method Detail

checkStatementUses

public void checkStatementUses(Stmt s,
                               Object useNodeOrStatement)

createUDDUChain

public void createUDDUChain(Local local,
                            Object useNodeOrStatement)

checkConditionalUses

public void checkConditionalUses(ASTCondition cond,
                                 ASTNode node)

getUseList

public List getUseList(ASTCondition cond)

getUsesFromBoxes

public List getUsesFromBoxes(List useBoxes)

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

print

public void print()