Spec-Zone.ru › OpenJDK 24

Интерфейс LocalVariableType

Все суперинтерфейсы:
ClassFileElement, CodeElement, PseudoInstruction
public sealed interface LocalVariableType extends PseudoInstruction
Псевдоинструкция, которая моделирует одну запись в атрибуте LocalVariableTypeTable. Доставляется как CodeElement во время обхода элементов CodeModel в соответствии с настройкой опции ClassFile.DebugElementsOption.

Запись типа локальной переменной составная:

LocalVariableType(
    int slot,
    String name,
    Signature signature,
    Label startScope,
    Label endScope
)
Где slot находится в [0, 65535].

Другая модель, LocalVariableTypeInfo, также моделирует запись типа локальной переменной; она не зависит от CodeModel и представляет значения bci как int вместо Label, и используется в качестве компонентов LocalVariableTypeTableAttribute.

Примечание API:
Используется, если тип локальной переменной является параметризованным типом, типом аргумента или массивом одного из предыдущих типов. Для этой локальной переменной все равно должен быть создан LocalVariable с удалённым типом.
С:
24
См. также:
  • LocalVariableTypeInfo
  • CodeBuilder::localVariableType
  • ClassFile.DebugElementsOption

Краткое описание методов

Модификатор и тип Метод Описание
Label endScope()
Возвращает конечный диапазон области видимости локальной переменной.
Utf8Entry name()
Возвращает имя локальной переменной.
static LocalVariableType of(int slot, Utf8Entry nameEntry, Utf8Entry signatureEntry, Label startScope, Label endScope)
Возвращает псевдоинструкцию типа локальной переменной.
static LocalVariableType of(int slot, String name, Signature signature, Label startScope, Label endScope)
Возвращает псевдоинструкцию типа локальной переменной.
Utf8Entry signature()
Возвращает строку универсального подписи локальной переменной.
default Signature signatureSymbol()
Возвращает универсальную подпись локальной переменной.
int slot()
Возвращает слот локальной переменной.
Label startScope()
Возвращает начальный диапазон области видимости локальной переменной.

Подробное описание методов

slot

int slot()
Возвращает слот локальной переменной. Значение находится в [0, 65535].
Возвращает:
слот локальной переменной

name

Utf8Entry name()
Возвращает имя локальной переменной.
Возвращает:
имя локальной переменной

signature

Utf8Entry signature()
Возвращает строку универсального подписи локальной переменной.
Примечание API:
Символьная универсальная подпись локальной переменной доступна через signatureSymbol().
Возвращает:
строку универсальной подписи локальной переменной

signatureSymbol

default Signature signatureSymbol()
Возвращает универсальную подпись локальной переменной.
Возвращает:
универсальную подпись локальной переменной

startScope

Label startScope()
Возвращает начальный диапазон области видимости локальной переменной.
Возвращает:
начальный диапазон области видимости локальной переменной

endScope

Label endScope()
Возвращает конечный диапазон области видимости локальной переменной.
Возвращает:
конечный диапазон области видимости локальной переменной

of

static LocalVariableType of(int slot, Utf8Entry nameEntry, Utf8Entry signatureEntry, Label startScope, Label endScope)
Возвращает псевдоинструкцию типа локальной переменной. slot должен быть в [0, 65535].
Параметры:
slot - слот локальной переменной
nameEntry - имя локальной переменной
signatureEntry - подпись локальной переменной
startScope - начальный диапазон области видимости локальной переменной
endScope - конечный диапазон области видимости локальной переменной
Возвращает:
псевдоинструкцию типа локальной переменной
Исключения:
IllegalArgumentException - если slot выходит за пределы

of

static LocalVariableType of(int slot, String name, Signature signature, Label startScope, Label endScope)
Возвращает псевдоинструкцию типа локальной переменной. slot должен быть в [0, 65535].
Параметры:
slot - слот локальной переменной
name - имя локальной переменной
signature - подпись локальной переменной
startScope - начальный диапазон области видимости локальной переменной
endScope - конечный диапазон области видимости локальной переменной
Возвращает:
псевдоинструкцию типа локальной переменной
Исключения:
IllegalArgumentException - если slot выходит за пределы

© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/java/lang/classfile/instruction/LocalVariableType.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API