Интерфейс IncrementInstruction
- Все суперинтерфейсы:
ClassFileElement, CodeElement, Instruction
public sealed interface IncrementInstruction extends Instruction
Моделирует инструкцию увеличения значения локальной переменной в массиве где
code атрибута Code. Соответствующие коды операций имеют вид Opcode.Kind.INCREMENT. Передаётся как CodeElement при обходе элементов CodeModel. Инструкция увеличения значения локальной переменной является составной:
IncrementInstruction(
int slot,
int constant
)
-
slotдолжно бытьu2. -
constantдолжно находиться в диапазоне[-32768, 32767].
- См. Спецификацию виртуальной машины Java:
- 6.5.iinc iinc
- Начиная с:
- 24
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
constant() |
Возвращает значение, на которое нужно увеличить. |
static IncrementInstruction |
of |
Возвращает инструкцию увеличения. |
static IncrementInstruction |
of |
Возвращает инструкцию увеличения. |
int |
slot() |
Возвращает слот локальной переменной, значение которой нужно увеличить. |
Методы, объявленные в интерфейсе Instruction
opcode, sizeInBytes | Модификатор и тип | Метод | Описание |
|---|---|---|
Opcode |
opcode() |
Возвращает операцию этой инструкции. |
int |
sizeInBytes() |
Возвращает размер этой инструкции в байтах. |
Подробное описание методов
slot
int slot()
Возвращает слот локальной переменной, значение которой нужно увеличить.
- Возвращает:
- слот локальной переменной, значение которой нужно увеличить
constant
int constant()
Возвращает значение, на которое нужно увеличить.
- Возвращает:
- значение, на которое нужно увеличить
of
static IncrementInstruction of(int slot, int constant)
Возвращает инструкцию увеличения.
-
slotдолжно бытьu2. -
constantдолжно находиться в диапазоне[-32768, 32767].
- Параметры:
-
slot— слот локальной переменной, значение которой нужно увеличить -
constant— значение, на которое нужно увеличить - Возвращает:
- инструкцию увеличения
- Вызывает исключение:
-
IllegalArgumentException— еслиslotилиconstantвыходит за пределы допустимого диапазона
of
static IncrementInstruction of(Opcode op, int slot, int constant)
Возвращает инструкцию увеличения.
slot должно быть u1, а constant должно находиться в диапазоне [-128, 127] для iinc; либо slot должно быть u2, а constant должно находиться в диапазоне [-32768, 32767] для wide iinc.
- Примечание к API:
- Явный аргумент
opпозволяет создаватьwideили обычные инструкции увеличения, еслиslotиconstantмогут быть закодированы с помощью более оптимизированных инструкций увеличения. - Параметры:
-
op— код операции для конкретного типа инструкции увеличения; он должен иметь видOpcode.Kind.INCREMENT -
slot— слот локальной переменной, значение которой нужно увеличить -
constant— константа увеличения - Возвращает:
- инструкцию увеличения
- Вызывает исключение:
-
IllegalArgumentException— если вид кода операции не равенOpcode.Kind.INCREMENTилиslotилиconstantвыходит за пределы допустимого диапазона - Начиная с:
- 27
© 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.