soot.dava.toolkits.base.AST.transformations
Class UselessLabeledBlockRemover
java.lang.Object
soot.dava.toolkits.base.AST.analysis.AnalysisAdapter
soot.dava.toolkits.base.AST.analysis.DepthFirstAdapter
soot.dava.toolkits.base.AST.transformations.UselessLabeledBlockRemover
- All Implemented Interfaces:
- Analysis
public class UselessLabeledBlockRemover
- extends DepthFirstAdapter
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, inASTDoWhileNode, inASTForLoopNode, inASTIfElseNode, inASTIfNode, inASTLabeledBlockNode, inASTOrCondition, inASTStatementSequenceNode, inASTSwitchNode, inASTSynchronizedBlockNode, inASTTryNode, inASTUnaryCondition, inASTUnconditionalLoopNode, inASTWhileNode, 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, outASTOrCondition, outASTStatementSequenceNode, outASTUnaryCondition, 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 |
UselessLabeledBlockRemover
public UselessLabeledBlockRemover()
UselessLabeledBlockRemover
public UselessLabeledBlockRemover(boolean verbose)
outASTMethodNode
public void outASTMethodNode(ASTMethodNode node)
- Overrides:
outASTMethodNode
in class DepthFirstAdapter
inASTMethodNode
public void inASTMethodNode(ASTMethodNode node)
- Overrides:
inASTMethodNode
in class DepthFirstAdapter
outASTSynchronizedBlockNode
public void outASTSynchronizedBlockNode(ASTSynchronizedBlockNode node)
- Overrides:
outASTSynchronizedBlockNode
in class DepthFirstAdapter
outASTLabeledBlockNode
public void outASTLabeledBlockNode(ASTLabeledBlockNode node)
- Overrides:
outASTLabeledBlockNode
in class DepthFirstAdapter
outASTUnconditionalLoopNode
public void outASTUnconditionalLoopNode(ASTUnconditionalLoopNode node)
- Overrides:
outASTUnconditionalLoopNode
in class DepthFirstAdapter
outASTSwitchNode
public void outASTSwitchNode(ASTSwitchNode node)
- Overrides:
outASTSwitchNode
in class DepthFirstAdapter
outASTIfNode
public void outASTIfNode(ASTIfNode node)
- Overrides:
outASTIfNode
in class DepthFirstAdapter
outASTIfElseNode
public void outASTIfElseNode(ASTIfElseNode node)
- Overrides:
outASTIfElseNode
in class DepthFirstAdapter
outASTWhileNode
public void outASTWhileNode(ASTWhileNode node)
- Overrides:
outASTWhileNode
in class DepthFirstAdapter
outASTForLoopNode
public void outASTForLoopNode(ASTForLoopNode node)
- Overrides:
outASTForLoopNode
in class DepthFirstAdapter
outASTDoWhileNode
public void outASTDoWhileNode(ASTDoWhileNode node)
- Overrides:
outASTDoWhileNode
in class DepthFirstAdapter
outASTTryNode
public void outASTTryNode(ASTTryNode node)
- Overrides:
outASTTryNode
in class DepthFirstAdapter
removeLabeledBlock
public static void removeLabeledBlock(ASTNode node,
ASTLabeledBlockNode labelBlock,
int subBodyNumber,
int nodeNumber)
createNewSubBody
public static List<Object> createNewSubBody(List<Object> oldSubBody,
int nodeNumber,
ASTLabeledBlockNode labelBlock)