Class CatchStatement
java.lang.Object
org.benf.cfr.reader.bytecode.analysis.parse.statement.AbstractStatement
org.benf.cfr.reader.bytecode.analysis.parse.statement.CatchStatement
- All Implemented Interfaces:
HasByteCodeLoc, DeepCloneable<Statement>, Statement, ComparableUnderEC, Dumpable
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate BlockIdentifierprivate LValueprivate final List<ExceptionGroup.Entry> -
Constructor Summary
ConstructorsConstructorDescriptionCatchStatement(BytecodeLoc loc, List<ExceptionGroup.Entry> exceptions, LValue catching) -
Method Summary
Modifier and TypeMethodDescriptionvoidcollectLValueAssignments(LValueAssignmentCollector<Statement> lValueAssigmentCollector) voidcollectLValueUsage(LValueUsageCollector lValueUsageCollector) deepClone(CloneHelper cloneHelper) private static JavaTypeInstancedetermineType(List<ExceptionGroup.Entry> exceptions) final booleanequivalentUnder(Object o, EquivalenceConstraint constraint) booleanhasCatchBlockFor(BlockIdentifier tryBlockIdent) voidremoveCatchBlockFor(BlockIdentifier tryBlockIdent) voidreplaceSingleUsageLValues(LValueRewriter lValueRewriter, SSAIdentifiers ssaIdentifiers) voidrewriteExpressions(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers) voidsetCatchBlockIdent(BlockIdentifier catchBlockIdent) Methods inherited from class AbstractStatement
addLoc, canThrow, collectLocallyMutatedVariables, collectObjectCreation, doesBlackListLValueReplacement, fallsToNext, getCompoundParts, getContainer, getLoc, getRValue, getTargetStatement, isCompound, outerDeepClone, setContainer, setLifetimeHint, toString, wantsLifetimeHint
-
Field Details
-
exceptions
-
catchBlockIdent
-
catching
-
-
Constructor Details
-
CatchStatement
-
-
Method Details
-
getCombinedLoc
-
determineType
-
deepClone
-
removeCatchBlockFor
-
hasCatchBlockFor
-
dump
-
getCatchBlockIdent
-
setCatchBlockIdent
-
replaceSingleUsageLValues
-
rewriteExpressions
public void rewriteExpressions(ExpressionRewriter expressionRewriter, SSAIdentifiers ssaIdentifiers) -
collectLValueUsage
-
collectLValueAssignments
- Specified by:
collectLValueAssignmentsin interfaceStatement- Overrides:
collectLValueAssignmentsin classAbstractStatement
-
getCreatedLValue
- Specified by:
getCreatedLValuein interfaceStatement- Overrides:
getCreatedLValuein classAbstractStatement
-
getExceptions
-
getStructuredStatement
-
equivalentUnder
-