Class UnstructuredWhile
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.UnstructuredWhile
- All Implemented Interfaces:
HasByteCodeLoc, Matcher<StructuredStatement>, StructuredStatement, Dumpable, TypeUsageCollectable
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate BlockIdentifierprivate Set<BlockIdentifier> private ConditionalExpression -
Constructor Summary
ConstructorsConstructorDescriptionUnstructuredWhile(BytecodeLoc loc, ConditionalExpression condition, BlockIdentifier blockIdentifier, Set<BlockIdentifier> blocksEndedAfter) -
Method Summary
Modifier and TypeMethodDescriptionclaimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) voidcollectTypeUsages(TypeUsageCollector collector) informBlockHeirachy(Vector<BlockIdentifier> blockIdentifiers) Methods 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, inlineable, isScopeBlock, markCreator, setContainer, supportsBreak, supportsContinueBreak, toString
-
Field Details
-
condition
-
blockIdentifier
-
blocksEndedAfter
-
-
Constructor Details
-
UnstructuredWhile
public UnstructuredWhile(BytecodeLoc loc, ConditionalExpression condition, BlockIdentifier blockIdentifier, Set<BlockIdentifier> blocksEndedAfter)
-
-
Method Details
-
dump
-
getCombinedLoc
-
collectTypeUsages
-
informBlockHeirachy
- Specified by:
informBlockHeirachyin interfaceStructuredStatement- Overrides:
informBlockHeirachyin classAbstractStructuredStatement
-
claimBlock
public StructuredStatement claimBlock(Op04StructuredStatement innerBlock, BlockIdentifier blockIdentifier, Vector<BlockIdentifier> blocksCurrentlyIn) - Specified by:
claimBlockin interfaceStructuredStatement- Overrides:
claimBlockin classAbstractStructuredStatement
-
getCondition
-