Class UnstructuredCase
java.lang.Object
org.benf.cfr.reader.bytecode.analysis.structured.statement.AbstractStructuredStatement
org.benf.cfr.reader.bytecode.analysis.structured.statement.AbstractUnStructuredStatement
org.benf.cfr.reader.bytecode.analysis.structured.statement.UnstructuredCase
- All Implemented Interfaces:
HasByteCodeLoc, Matcher<StructuredStatement>, StructuredStatement, Dumpable, TypeUsageCollectable
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate final BlockIdentifierprivate final InferredJavaTypeprivate final List<Expression> -
Constructor Summary
ConstructorsConstructorDescriptionUnstructuredCase(List<Expression> values, InferredJavaType caseType, BlockIdentifier blockIdentifier) -
Method Summary
Modifier and TypeMethodDescriptionclaimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) voidcollectTypeUsages(TypeUsageCollector collector) (package private) StructuredStatementMethods inherited from class AbstractUnStructuredStatement
findCreatedHere, getBreakableBlockOrNull, isEffectivelyNOP, isProperlyStructured, isRecursivelyStructured, linearizeInto, match, rewriteExpressions, suggestName, traceLocalVariableScope, transformStructuredChildren, transformStructuredChildrenInReverseMethods inherited from class AbstractStructuredStatement
addLoc, alwaysDefines, canDefine, canFall, fallsNopToNext, getContainer, getInline, getLoc, informBlockHeirachy, inlineable, isScopeBlock, markCreator, setContainer, supportsBreak, supportsContinueBreak, toString
-
Field Details
-
values
-
blockIdentifier
-
caseType
-
-
Constructor Details
-
UnstructuredCase
public UnstructuredCase(List<Expression> values, InferredJavaType caseType, BlockIdentifier blockIdentifier)
-
-
Method Details
-
dump
-
getCombinedLoc
-
collectTypeUsages
-
getEmptyStructuredCase
StructuredStatement getEmptyStructuredCase() -
claimBlock
public StructuredStatement claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) - Specified by:
claimBlockin interfaceStructuredStatement- Overrides:
claimBlockin classAbstractStructuredStatement
-