Interface ExceptionCatch
- All Superinterfaces:
ClassFileElement,CodeElement,PseudoInstruction
A pseudo-instruction modeling an entry in the
exception_table array
of a Code attribute. Catch (JVMS 3.12) and
finally (JVMS 3.14) blocks in Java source code compile to exception
table entries. Delivered as a CodeElement when traversing the
contents of a CodeModel.
An exception table entry is composite:
ExceptionCatch(
Label handler,
Label tryStart,
Label tryEnd,
Optional<ClassEntry> catchType
)
- See Java Virtual Machine Specification:
-
4.7.3 The
CodeAttribute - Since:
- 24
- See Also:
-
Method Summary
Modifier and TypeMethodDescriptionReturns the type of the exception to catch, or empty if this handler catches everything.handler()Returns the handler for the exception.static ExceptionCatchReturns an exception table pseudo-instruction to catch everything.static ExceptionCatchReturns an exception table pseudo-instruction.tryEnd()Returns the end of the instruction range for the guarded instructions.tryStart()Returns the beginning of the instruction range for the guarded instructions.
-
Method Details
-
handler
-
tryStart
Label tryStart()Returns the beginning of the instruction range for the guarded instructions.- Returns:
- the beginning of the instruction range for the guarded instructions
-
tryEnd
Label tryEnd()Returns the end of the instruction range for the guarded instructions.- Returns:
- the end of the instruction range for the guarded instructions
-
catchType
Optional<ClassEntry> catchType()Returns the type of the exception to catch, or empty if this handler catches everything.- Returns:
- the type of the exception to catch, or empty if this handler catches everything
-
of
static ExceptionCatch of(Label handler, Label tryStart, Label tryEnd, Optional<ClassEntry> catchTypeEntry) Returns an exception table pseudo-instruction.- Parameters:
handler- the handler for the exceptiontryStart- the beginning of the instruction range for the guarded instructionstryEnd- the end of the instruction range for the guarded instructionscatchTypeEntry- the type of exception to catch, or empty if this handler is unconditional- Returns:
- an exception table pseudo-instruction
-
of
Returns an exception table pseudo-instruction to catch everything.- Parameters:
handler- the handler for the exceptiontryStart- the beginning of the instruction range for the guarded instructionstryEnd- the end of the instruction range for the guarded instructions- Returns:
- an exception table pseudo-instruction to catch everything
-