Class CaseStatement
java.lang.Object
org.benf.cfr.reader.bytecode.analysis.parse.statement.AbstractStatement
org.benf.cfr.reader.bytecode.analysis.parse.statement.CaseStatement
- All Implemented Interfaces:
HasByteCodeLoc,DeepCloneable<Statement>,Statement,ComparableUnderEC,Dumpable
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final BlockIdentifierprivate final InferredJavaTypeprivate final BlockIdentifierprivate List<Expression> -
Constructor Summary
ConstructorsConstructorDescriptionCaseStatement(BytecodeLoc loc, List<Expression> values, InferredJavaType caseType, BlockIdentifier switchBlock, BlockIdentifier caseBlock) -
Method Summary
Modifier and TypeMethodDescriptionbooleancanThrow(ExceptionCheck caught) voidcollectLValueUsage(LValueUsageCollector lValueUsageCollector) deepClone(CloneHelper cloneHelper) final booleanequivalentUnder(Object o, EquivalenceConstraint constraint) booleanvoidreplaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers) voidrewriteExpressions(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers) Methods inherited from class org.benf.cfr.reader.bytecode.analysis.parse.statement.AbstractStatement
addLoc, collectLocallyMutatedVariables, collectLValueAssignments, collectObjectCreation, doesBlackListLValueReplacement, fallsToNext, getCompoundParts, getContainer, getCreatedLValue, getLoc, getRValue, getTargetStatement, isCompound, outerDeepClone, setContainer, setLifetimeHint, toString, wantsLifetimeHint
-
Field Details
-
values
-
switchBlock
-
caseBlock
-
caseType
-
-
Constructor Details
-
CaseStatement
public CaseStatement(BytecodeLoc loc, List<Expression> values, InferredJavaType caseType, BlockIdentifier switchBlock, BlockIdentifier caseBlock)
-
-
Method Details
-
getCombinedLoc
-
dump
-
deepClone
-
replaceSingleUsageLValues
-
rewriteExpressions
public void rewriteExpressions(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers) -
collectLValueUsage
-
getSwitchBlock
-
isDefault
public boolean isDefault() -
getStructuredStatement
-
getCaseBlock
-
getValues
-
canThrow
- Specified by:
canThrowin interfaceStatement- Overrides:
canThrowin classAbstractStatement
-
equivalentUnder
-