Интерфейс CharacterRangeTableAttribute
- Все суперинтерфейсы:
Attribute<CharacterRangeTableAttribute>, ClassFileElement
public sealed interface CharacterRangeTableAttribute extends Attribute<CharacterRangeTableAttribute>
CharacterRangeTable, представляющий собой двунаправленное сопоставление диапазонов позиций в исходном файле с диапазонами индексов в массиве code. При обходе элементов CodeModel его записи предоставляются в виде объектов CharacterRange; их обработка включается и отключается с помощью ClassFile.DebugElementsOption. Атрибут CharacterRangeTable состоит из массива записей диапазонов символов. Записи диапазонов символов образуют лесовидную структуру данных: любые две записи либо не пересекаются, либо, если они пересекаются, одна запись должна быть вложена в другую — как по индексам массива code, так и по позициям символов в исходном файле. Записи диапазонов символов могут располагаться в любом порядке.
Этот атрибут встречается только в атрибутах Code; допускается несколько его экземпляров, но в атрибуте Code он должен появляться только один раз. Он зависит от данных, связанных с метками.
Этот атрибут нельзя передать в CodeBuilder; его записи можно создать с помощью CharacterRange, в результате чего в атрибуте Code будет создан не более чем один экземпляр атрибута.
Этот атрибут не является предопределённым в платформе Java SE. Это нестандартный атрибут, специфичный для JDK, который создаётся эталонной реализацией системного компилятора Java и определён модулем jdk.compiler.
- С версии:
- 24
- См. также:
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
List |
characterRangeTable() |
Возвращает записи таблицы диапазонов символов. |
static CharacterRangeTableAttribute |
of |
Возвращает атрибут CharacterRangeTable. |
Методы, объявленные в интерфейсе Attribute
attributeMapper, attributeName
Подробное описание методов
characterRangeTable
List<CharacterRangeInfo> characterRangeTable()
- Возвращает:
- записи таблицы диапазонов символов
of
static CharacterRangeTableAttribute of(List<CharacterRangeInfo> ranges)
CharacterRangeTable.- Примечание по API:
- Созданный атрибут нельзя записать в
CodeBuilder. Вместо этого используйтеCodeBuilder::characterRange. - Параметры:
-
ranges— описания диапазонов символов - Возвращает:
- атрибут
CharacterRangeTable
© 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/attribute/CharacterRangeTableAttribute.html