Class SwitchStatement
java.lang.Object
org.benf.cfr.reader.bytecode.analysis.parse.statement.AbstractStatement
org.benf.cfr.reader.bytecode.analysis.parse.statement.SwitchStatement
- All Implemented Interfaces:
HasByteCodeLoc, DeepCloneable<Statement>, Statement, ComparableUnderEC, Dumpable
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate booleanprivate final BlockIdentifierprivate Expression -
Constructor Summary
ConstructorsConstructorDescriptionSwitchStatement(BytecodeLoc loc, Expression switchOn, BlockIdentifier switchBlock) -
Method Summary
Modifier and TypeMethodDescriptionvoidcollectLValueUsage(LValueUsageCollector lValueUsageCollector) deepClone(CloneHelper cloneHelper) final booleanequivalentUnder(Object o, EquivalenceConstraint constraint) booleanvoidreplaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers) voidrewriteExpressions(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers) voidsetLifetimeHint(LValue lv, boolean usedInChildren) voidsetSwitchOn(Expression switchOn) Methods inherited from class AbstractStatement
addLoc, canThrow, collectLocallyMutatedVariables, collectLValueAssignments, collectObjectCreation, doesBlackListLValueReplacement, getCompoundParts, getContainer, getCreatedLValue, getLoc, getRValue, getTargetStatement, isCompound, outerDeepClone, setContainer, toString
-
Field Details
-
switchOn
-
switchBlock
-
safeExpression
private boolean safeExpression
-
-
Constructor Details
-
SwitchStatement
SwitchStatement(BytecodeLoc loc, Expression switchOn, BlockIdentifier switchBlock)
-
-
Method Details
-
getCombinedLoc
-
deepClone
-
dump
-
replaceSingleUsageLValues
-
rewriteExpressions
public void rewriteExpressions(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers) -
collectLValueUsage
-
getStructuredStatement
-
getSwitchOn
-
setSwitchOn
-
getSwitchBlock
-
equivalentUnder
-
fallsToNext
public boolean fallsToNext()- Specified by:
fallsToNextin interfaceStatement- Overrides:
fallsToNextin classAbstractStatement
-
wantsLifetimeHint
- Specified by:
wantsLifetimeHintin interfaceStatement- Overrides:
wantsLifetimeHintin classAbstractStatement
-
setLifetimeHint
- Specified by:
setLifetimeHintin interfaceStatement- Overrides:
setLifetimeHintin classAbstractStatement
-