Интерфейс CharacterRange
- Все суперинтерфейсы:
ClassFileElement, CodeElement, PseudoInstruction
public sealed interface CharacterRange extends PseudoInstruction
CharacterRangeTable. При обходе элементов CodeModel передаётся как CodeElement в соответствии с настройкой параметра ClassFile.DebugElementsOption. Запись диапазона символов является составной:
CharacterRange(
Label startScope,
Label endScope,
int characterRangeStart,
int characterRangeEnd,
int flags
)
Другая модель, CharacterRangeInfo, также моделирует запись диапазона символов; она не зависит от CodeModel, представляет значения bci как int, а не как Label, и используется в качестве компонентов CharacterRangeTableAttribute.
- Начиная с версии:
- 24
- См. также:
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
static final int |
FLAG_ASSIGNMENT |
Битовая маска вида ASSIGNMENT для CharacterRangeInfo. |
static final int |
FLAG_BLOCK |
Битовая маска вида BLOCK для CharacterRangeInfo. |
static final int |
FLAG_BRANCH_FALSE |
Битовая маска вида BRANCH_FALSE для CharacterRangeInfo. |
static final int |
FLAG_BRANCH_TRUE |
Битовая маска вида BRANCH_TRUE для CharacterRangeInfo. |
static final int |
FLAG_CREATE |
Битовая маска вида CREATE для CharacterRangeInfo. |
static final int |
FLAG_FLOW_CONTROLLER |
Битовая маска вида FLOW_CONTROLLER для CharacterRangeInfo. |
static final int |
FLAG_FLOW_TARGET |
Битовая маска вида FLOW_TARGET для CharacterRangeInfo. |
static final int |
FLAG_INVOKE |
Битовая маска вида INVOKE для CharacterRangeInfo. |
static final int |
FLAG_STATEMENT |
Битовая маска вида STATEMENT для CharacterRangeInfo. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
characterRangeEnd() |
Возвращает закодированный конец области диапазона символов (не включая его). |
int |
characterRangeStart() |
Возвращает закодированное начало области диапазона символов (включая его). |
Label |
endScope() |
Возвращает конец диапазона инструкций. |
int |
flags() |
Слово флагов, указывающее тип диапазона. |
static CharacterRange |
of |
Возвращает псевдоинструкцию диапазона символов. |
Label |
startScope() |
Возвращает начало диапазона инструкций. |
Подробное описание полей
FLAG_STATEMENT
FLAG_BLOCK
FLAG_ASSIGNMENT
FLAG_FLOW_CONTROLLER
static final int FLAG_FLOW_CONTROLLER
CharacterRangeInfo.- См. также:
FLAG_FLOW_TARGET
FLAG_INVOKE
FLAG_CREATE
FLAG_BRANCH_TRUE
FLAG_BRANCH_FALSE
static final int FLAG_BRANCH_FALSE
CharacterRangeInfo.- См. также:
Подробное описание методов
startScope
Label startScope()
- Возвращает:
- начало диапазона инструкций
endScope
Label endScope()
- Возвращает:
- конец диапазона инструкций
characterRangeStart
int characterRangeStart()
line_number << 10 + column_number, где исходный файл рассматривается как массив символов (возможно, многобайтовых).- Возвращает:
- закодированное начало области диапазона символов (включая его)
characterRangeEnd
int characterRangeEnd()
line_number << 10 + column_number, где исходный файл рассматривается как массив символов (возможно, многобайтовых).- Возвращает:
- закодированный конец области диапазона символов (не включая его)
flags
int flags()
- Возвращает:
- флаги
- См. также:
of
static CharacterRange of(Label startScope, Label endScope, int characterRangeStart, int characterRangeEnd, int flags)
- Параметры:
-
startScope— начало диапазона инструкций -
endScope— конец диапазона инструкций -
characterRangeStart— закодированное начало области диапазона символов (включая его) -
characterRangeEnd— закодированный конец области диапазона символов (не включая его) -
flags— слово флагов, указывающее тип диапазона - Возвращает:
- псевдоинструкцию диапазона символов
© 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://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/lang/classfile/instruction/CharacterRange.html