Interface LineNumber

All Superinterfaces:
ClassFileElement, CodeElement, PseudoInstruction

public sealed interface LineNumber extends PseudoInstruction
A pseudo-instruction which indicates the code for a given line number starts after the current position in a Code attribute. This models a single entry in the LineNumberTable attribute. Delivered as a CodeElement during traversal of the elements of a CodeModel, according to the setting of the ClassFile.LineNumbersOption option.

A line number entry is composite:

Another model, LineNumberInfo, also models a line number entry; it has no dependency on a CodeModel and represents of bci values as ints instead of order of pseudo-instructions in the elements of a CodeModel, and is used as components of a LineNumberTableAttribute.

API Note:
Line numbers are represented with custom pseudo-instructions to avoid using labels, which usually indicate branching targets for the control flow.
Since:
24
See Also:
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    Returns the line number.
    static LineNumber
    of(int line)
    Returns a line number pseudo-instruction.
  • Method Details

    • line

      int line()
      Returns the line number.
      Returns:
      the line number
    • of

      static LineNumber of(int line)
      Returns a line number pseudo-instruction.
      Parameters:
      line - the line number
      Returns:
      a line number pseudo-instruction