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
-
-
Field Summary
-
Fields inherited from class soot.dava.toolkits.base.AST.analysis.DepthFirstAdapter
DEBUG
-
-
Constructor Summary
Constructors Constructor Description UselessLabeledBlockRemover()UselessLabeledBlockRemover(boolean verbose)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static List<Object>createNewSubBody(List<Object> oldSubBody, int nodeNumber, ASTLabeledBlockNode labelBlock)voidinASTMethodNode(ASTMethodNode node)voidoutASTDoWhileNode(ASTDoWhileNode node)voidoutASTForLoopNode(ASTForLoopNode node)voidoutASTIfElseNode(ASTIfElseNode node)voidoutASTIfNode(ASTIfNode node)voidoutASTLabeledBlockNode(ASTLabeledBlockNode node)voidoutASTMethodNode(ASTMethodNode node)voidoutASTSwitchNode(ASTSwitchNode node)voidoutASTSynchronizedBlockNode(ASTSynchronizedBlockNode node)voidoutASTTryNode(ASTTryNode node)voidoutASTUnconditionalLoopNode(ASTUnconditionalLoopNode node)voidoutASTWhileNode(ASTWhileNode node)static voidremoveLabeledBlock(ASTNode node, ASTLabeledBlockNode labelBlock, int subBodyNumber, int nodeNumber)-
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 soot.dava.toolkits.base.AST.analysis.AnalysisAdapter
defaultCase
-
-
-
-
Method Detail
-
outASTMethodNode
public void outASTMethodNode(ASTMethodNode node)
- Overrides:
outASTMethodNodein classDepthFirstAdapter
-
inASTMethodNode
public void inASTMethodNode(ASTMethodNode node)
- Overrides:
inASTMethodNodein classDepthFirstAdapter
-
outASTSynchronizedBlockNode
public void outASTSynchronizedBlockNode(ASTSynchronizedBlockNode node)
- Overrides:
outASTSynchronizedBlockNodein classDepthFirstAdapter
-
outASTLabeledBlockNode
public void outASTLabeledBlockNode(ASTLabeledBlockNode node)
- Overrides:
outASTLabeledBlockNodein classDepthFirstAdapter
-
outASTUnconditionalLoopNode
public void outASTUnconditionalLoopNode(ASTUnconditionalLoopNode node)
- Overrides:
outASTUnconditionalLoopNodein classDepthFirstAdapter
-
outASTSwitchNode
public void outASTSwitchNode(ASTSwitchNode node)
- Overrides:
outASTSwitchNodein classDepthFirstAdapter
-
outASTIfNode
public void outASTIfNode(ASTIfNode node)
- Overrides:
outASTIfNodein classDepthFirstAdapter
-
outASTIfElseNode
public void outASTIfElseNode(ASTIfElseNode node)
- Overrides:
outASTIfElseNodein classDepthFirstAdapter
-
outASTWhileNode
public void outASTWhileNode(ASTWhileNode node)
- Overrides:
outASTWhileNodein classDepthFirstAdapter
-
outASTForLoopNode
public void outASTForLoopNode(ASTForLoopNode node)
- Overrides:
outASTForLoopNodein classDepthFirstAdapter
-
outASTDoWhileNode
public void outASTDoWhileNode(ASTDoWhileNode node)
- Overrides:
outASTDoWhileNodein classDepthFirstAdapter
-
outASTTryNode
public void outASTTryNode(ASTTryNode node)
- Overrides:
outASTTryNodein classDepthFirstAdapter
-
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)
-
-