public class IfElseSplitter extends DepthFirstAdapter
Modifier and Type | Field and Description |
---|---|
static boolean |
DEBUG |
Constructor and Description |
---|
IfElseSplitter() |
IfElseSplitter(boolean verbose) |
Modifier and Type | Method and Description |
---|---|
boolean |
bodyTargetsLabel(SETNodeLabel label,
java.util.List<java.lang.Object> body) |
Stmt |
getLastStmt(java.util.List<java.lang.Object> body) |
void |
inASTMethodNode(ASTMethodNode node) |
void |
outASTIfElseNode(ASTIfElseNode node) |
void |
outASTMethodNode(ASTMethodNode a) |
boolean |
tryBodyPattern(java.util.List<java.lang.Object> body,
SETNodeLabel label,
java.util.List<java.lang.Object> otherBody) |
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, outASTDoWhileNode, outASTForLoopNode, 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
defaultCase
public IfElseSplitter()
public IfElseSplitter(boolean verbose)
public void inASTMethodNode(ASTMethodNode node)
inASTMethodNode
in class DepthFirstAdapter
public void outASTMethodNode(ASTMethodNode a)
outASTMethodNode
in class DepthFirstAdapter
public void outASTIfElseNode(ASTIfElseNode node)
outASTIfElseNode
in class DepthFirstAdapter
public boolean tryBodyPattern(java.util.List<java.lang.Object> body, SETNodeLabel label, java.util.List<java.lang.Object> otherBody)
public boolean bodyTargetsLabel(SETNodeLabel label, java.util.List<java.lang.Object> body)
public Stmt getLastStmt(java.util.List<java.lang.Object> body)