public class ClosestAbruptTargetFinder extends DepthFirstAdapter
DEBUG| Constructor and Description |
|---|
ClosestAbruptTargetFinder(Singletons.Global g) |
| Modifier and Type | Method and Description |
|---|---|
ASTNode |
getTarget(DAbruptStmt ab)
To be invoked by other analyses.
|
void |
inASTDoWhileNode(ASTDoWhileNode node) |
void |
inASTForLoopNode(ASTForLoopNode node) |
void |
inASTSwitchNode(ASTSwitchNode node) |
void |
inASTUnconditionalLoopNode(ASTUnconditionalLoopNode node) |
void |
inASTWhileNode(ASTWhileNode node)
Following methods add a new node to the end of the nodeStack arrayList Since that node becomes the closest target of an
implicit break or continue
|
void |
inStmt(Stmt s) |
void |
outASTDoWhileNode(ASTDoWhileNode node) |
void |
outASTForLoopNode(ASTForLoopNode node) |
void |
outASTSwitchNode(ASTSwitchNode node) |
void |
outASTUnconditionalLoopNode(ASTUnconditionalLoopNode node) |
void |
outASTWhileNode(ASTWhileNode node)
Following methods remove the last node from the end of the nodeStack arrayList Since the previous node now becomes the
closest target to an implicit break or continue
|
static ClosestAbruptTargetFinder |
v() |
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, inASTIfElseNode, inASTIfNode, inASTLabeledBlockNode, inASTMethodNode, inASTOrCondition, inASTStatementSequenceNode, inASTSynchronizedBlockNode, inASTTryNode, inASTUnaryCondition, inBinopExpr, inCastExpr, inDefinitionStmt, inDVariableDeclarationStmt, inExpr, inExprOrRefValueBox, inInstanceFieldRef, inInstanceInvokeExpr, inInstanceOfExpr, inInvokeExpr, inInvokeStmt, inNewArrayExpr, inNewMultiArrayExpr, inRef, inReturnStmt, inStaticFieldRef, inThrowStmt, inType, inUnopExpr, inValue, normalRetrieving, outArrayRef, outASTAndCondition, outASTBinaryCondition, outASTIfElseNode, outASTIfNode, outASTLabeledBlockNode, outASTMethodNode, outASTOrCondition, outASTStatementSequenceNode, outASTSynchronizedBlockNode, outASTTryNode, outASTUnaryCondition, outBinopExpr, outCastExpr, outDefinitionStmt, outDVariableDeclarationStmt, outExpr, outExprOrRefValueBox, outInstanceFieldRef, outInstanceInvokeExpr, outInstanceOfExpr, outInvokeExpr, outInvokeStmt, outNewArrayExpr, outNewMultiArrayExpr, outRef, outReturnStmt, outStaticFieldRef, outStmt, outThrowStmt, outType, outUnopExpr, outValuedefaultCasepublic ClosestAbruptTargetFinder(Singletons.Global g)
public static ClosestAbruptTargetFinder v()
public ASTNode getTarget(DAbruptStmt ab)
public void inASTWhileNode(ASTWhileNode node)
inASTWhileNode in class DepthFirstAdapterpublic void inASTDoWhileNode(ASTDoWhileNode node)
inASTDoWhileNode in class DepthFirstAdapterpublic void inASTUnconditionalLoopNode(ASTUnconditionalLoopNode node)
inASTUnconditionalLoopNode in class DepthFirstAdapterpublic void inASTForLoopNode(ASTForLoopNode node)
inASTForLoopNode in class DepthFirstAdapterpublic void inASTSwitchNode(ASTSwitchNode node)
inASTSwitchNode in class DepthFirstAdapterpublic void outASTWhileNode(ASTWhileNode node)
outASTWhileNode in class DepthFirstAdapterpublic void outASTDoWhileNode(ASTDoWhileNode node)
outASTDoWhileNode in class DepthFirstAdapterpublic void outASTUnconditionalLoopNode(ASTUnconditionalLoopNode node)
outASTUnconditionalLoopNode in class DepthFirstAdapterpublic void outASTForLoopNode(ASTForLoopNode node)
outASTForLoopNode in class DepthFirstAdapterpublic void outASTSwitchNode(ASTSwitchNode node)
outASTSwitchNode in class DepthFirstAdapterpublic void inStmt(Stmt s)
inStmt in class DepthFirstAdapterCopyright © 2021 Soot OSS. All rights reserved.