TypeAnnotation.LocalVarTargetInfo (Java SE 26 & JDK 26)
Description: declaration: module: java.base, package: java.lang.classfile, interface: TypeAnnotation, interface: LocalVarTargetInfo
Keywords: java.lang.classfile.TypeAnnotation.LocalVarTargetInfo interface

# Interface TypeAnnotation.LocalVarTargetInfo

Enclosing interface:
  `TypeAnnotation`

public static sealed interface TypeAnnotation.LocalVarTargetInfo
Indicates a range of code array offsets within which a local variable has a value, and the index into the local variable array of the current frame at which that local variable can be found.

Since:
  24
See Also:
  - `TypeAnnotation.LocalVarTarget`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `Label`
  `endLabel()`
  The given local variable has a value at indices into the code array in the interval [start_pc, start_pc + length), that is, between start_pc inclusive and start_pc + length exclusive.
  `int`
  `index()`
  The given local variable must be at index in the local variable array of the current frame.
  `static TypeAnnotation.LocalVarTargetInfo`
  `of(Label startLabel, Label endLabel, int index)`
  Returns local variable target info.
  `Label`
  `startLabel()`
  The given local variable has a value at indices into the code array in the interval [start_pc, start_pc + length), that is, between start_pc inclusive and start_pc + length exclusive.

- ## Method Details

  - ### startLabel

    Label startLabel()
    The given local variable has a value at indices into the code array in the interval [start_pc, start_pc + length), that is, between start_pc inclusive and start_pc + length exclusive.
    Returns:
      the start of the bytecode section

  - ### endLabel

    Label endLabel()
    The given local variable has a value at indices into the code array in the interval [start_pc, start_pc + length), that is, between start_pc inclusive and start_pc + length exclusive.
    Returns:
      the end of the bytecode section

  - ### index

    int index()
    The given local variable must be at index in the local variable array of the current frame. If the local variable at index is of type double or long, it occupies both index and index + 1.
    Returns:
      the index into the local variables

  - ### of

    static TypeAnnotation.LocalVarTargetInfo of(Label startLabel, Label endLabel, int index)
    Returns local variable target info.
    Parameters:
      `startLabel` - the code label indicating start of an interval where variable has value
      `endLabel` - the code label indicating start of an interval where variable has value
      `index` - index into the local variables
    Returns:
      local variable target info
    Throws:
      `IllegalArgumentException` - if `index` is not `u2`