# Interface DiscontinuedInstruction

All Superinterfaces:
  `ClassFileElement, CodeElement, Instruction`

All Known Subinterfaces:
  `DiscontinuedInstruction.JsrInstruction, DiscontinuedInstruction.RetInstruction`

public sealed interface DiscontinuedInstruction extends Instruction permits DiscontinuedInstruction.JsrInstruction, DiscontinuedInstruction.RetInstruction
Marker interface for instruction discontinued from the `code` array of a `Code` attribute. Delivered as a `CodeElement` when traversing the elements of a `CodeModel`.

API Note:
  While most instructions have convenience factory methods in `CodeBuilder`, discontinued instructions can only be supplied to code builders explicitly with `CodeBuilder::with` to discourage their use.
See Java Virtual Machine Specification:
  4.9.1 Static Constraints
Sealed Class Hierarchy Graph:
Since:
  24

## Nested Class Summary

Nested Classes
Modifier and Type
Interface
Description
`static interface`
`DiscontinuedInstruction.JsrInstruction`
Models jump subroutine instructions discontinued from the `code` array of a `Code` attribute since class file major version 51 (JVMS 4.9.1).
`static interface`
`DiscontinuedInstruction.RetInstruction`
Models return from subroutine instructions discontinued from the `code` array of a `Code` attribute since class file major version 51 (JVMS 4.9.1).

## Method Summary

### Methods declared in interface Instruction

`opcode, sizeInBytes`
Modifier and Type
Method
Description
`Opcode`
`opcode()`
Returns the operation of this instruction.
`int`
`sizeInBytes()`
Returns the size in bytes of this instruction.