public class SwitchStatement extends AbstractStatement
Modifier and Type | Field and Description |
---|---|
private boolean |
safeExpression |
private BlockIdentifier |
switchBlock |
private Expression |
switchOn |
Constructor and Description |
---|
SwitchStatement(BytecodeLoc loc,
Expression switchOn,
BlockIdentifier switchBlock) |
Modifier and Type | Method and Description |
---|---|
void |
collectLValueUsage(LValueUsageCollector lValueUsageCollector) |
Statement |
deepClone(CloneHelper cloneHelper) |
Dumper |
dump(Dumper dumper) |
boolean |
equivalentUnder(java.lang.Object o,
EquivalenceConstraint constraint) |
boolean |
fallsToNext() |
BytecodeLoc |
getCombinedLoc() |
StructuredStatement |
getStructuredStatement() |
BlockIdentifier |
getSwitchBlock() |
Expression |
getSwitchOn() |
void |
replaceSingleUsageLValues(LValueRewriter lValueRewriter,
SSAIdentifiers ssaIdentifiers) |
void |
rewriteExpressions(ExpressionRewriter expressionRewriter,
SSAIdentifiers ssaIdentifiers) |
void |
setLifetimeHint(LValue lv,
boolean usedInChildren) |
void |
setSwitchOn(Expression switchOn) |
java.util.Set<LValue> |
wantsLifetimeHint() |
addLoc, canThrow, collectLocallyMutatedVariables, collectLValueAssignments, collectObjectCreation, doesBlackListLValueReplacement, getCompoundParts, getContainer, getCreatedLValue, getLoc, getRValue, getTargetStatement, isCompound, outerDeepClone, setContainer, toString
private Expression switchOn
private final BlockIdentifier switchBlock
private boolean safeExpression
SwitchStatement(BytecodeLoc loc, Expression switchOn, BlockIdentifier switchBlock)
public BytecodeLoc getCombinedLoc()
public Statement deepClone(CloneHelper cloneHelper)
public void replaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers)
public void rewriteExpressions(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers)
public void collectLValueUsage(LValueUsageCollector lValueUsageCollector)
public StructuredStatement getStructuredStatement()
public Expression getSwitchOn()
public void setSwitchOn(Expression switchOn)
public BlockIdentifier getSwitchBlock()
public final boolean equivalentUnder(java.lang.Object o, EquivalenceConstraint constraint)
public boolean fallsToNext()
fallsToNext
in interface Statement
fallsToNext
in class AbstractStatement
public java.util.Set<LValue> wantsLifetimeHint()
wantsLifetimeHint
in interface Statement
wantsLifetimeHint
in class AbstractStatement
public void setLifetimeHint(LValue lv, boolean usedInChildren)
setLifetimeHint
in interface Statement
setLifetimeHint
in class AbstractStatement