Spec-Zone.ru › OpenJDK 24

Интерфейс StackMapFrameInfo

public sealed interface StackMapFrameInfo
Моделирует кадр карты стека в атрибуте StackMapTable (JVMS 4.7.4). Кадр карты стека должен появляться в начале каждого базового блока в методе (JVMS 4.10.1).
Замечание по API:
В общем случае, кадр карты стека должен быть определен для каждого целевого адреса BranchInstruction, или для недостижимого кода непосредственно после безусловной инструкции перехода, например, goto. Автоматическая генерация карты стека не может обрабатывать недостижимый код непосредственно после безусловного перехода; ClassFile.DeadCodeOption позволяет заменить такой код, или продвинутые пользователи могут предоставить свои карты стека для недостижимого кода.
См. Спецификацию виртуальной машины Java:
4.7.4 Атрибут StackMapTable
4.10.1 Верификация путем проверки типов
С:
24
См. также:
  • StackMapTableAttribute.entries()

Краткое описание вложенных классов

Модификатор и тип Интерфейс Описание
static interface  StackMapFrameInfo.ObjectVerificationTypeInfo
Значение стека для типа объекта.
static enum  StackMapFrameInfo.SimpleVerificationTypeInfo
Простое значение стека.
static interface  StackMapFrameInfo.UninitializedVerificationTypeInfo
Неинициализированное значение стека.
static interface  StackMapFrameInfo.VerificationTypeInfo
Тип значения стека или локальной переменной.

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

Модификатор и тип Метод Описание
int frameType()
Возвращает исходное значение u1 frame_type.
List<StackMapFrameInfo.VerificationTypeInfo> locals()
Возвращает расширенные типы локальных переменных.
static StackMapFrameInfo of(Label target, List<StackMapFrameInfo.VerificationTypeInfo> locals, List<StackMapFrameInfo.VerificationTypeInfo> stack)
Возвращает новый кадр карты стека.
List<StackMapFrameInfo.VerificationTypeInfo> stack()
Возвращает расширенные типы стека операндов.
Label target()
Возвращает метку целевого кадра.

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

frameType

int frameType()
Возвращает исходное значение u1 frame_type.
Возвращает:
исходное значение u1 frame_type

target

Label target()
Возвращает метку целевого кадра.
Возвращает:
метка целевого кадра

locals

List<StackMapFrameInfo.VerificationTypeInfo> locals()
Возвращает расширенные типы локальных переменных.
Возвращает:
расширенные типы локальных переменных

stack

List<StackMapFrameInfo.VerificationTypeInfo> stack()
Возвращает расширенные типы стека операндов.
Возвращает:
расширенные типы стека операндов

of

static StackMapFrameInfo of(Label target, List<StackMapFrameInfo.VerificationTypeInfo> locals, List<StackMapFrameInfo.VerificationTypeInfo> stack)
Возвращает новый кадр карты стека.
Параметры:
target - расположение кадра
locals - полный список локальных переменных кадра
stack - полный стек кадра
Возвращает:
новый кадр карты стека

© 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/attribute/StackMapFrameInfo.html

Spec-Zone.ru

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