Module java.base

Interface CharacterRangeTableAttribute

All Superinterfaces:
AttributePREVIEW<CharacterRangeTableAttributePREVIEW>, ClassFileElementPREVIEW, WritableElementPREVIEW<CharacterRangeTableAttributePREVIEW>

public sealed interface CharacterRangeTableAttribute extends AttributePREVIEW<CharacterRangeTableAttributePREVIEW>
CharacterRangeTableAttribute is a preview API of the Java platform.
Programs can only use CharacterRangeTableAttribute when preview features are enabled.
Preview features may be removed in a future release, or upgraded to permanent features of the Java platform.
The CharacterRangeTable attribute is an optional variable-length attribute in the attributes table of a Code attribute. It may be used by debuggers to determine which part of the Java virtual machine code array corresponds to a given position in the source file or to determine what section of source code corresponds to a given index into the code array. The CharacterRangeTable attribute consists of an array of character range entries. Each character range entry within the table associates a range of indices in the code array with a range of character indices in the source file. If the source file is viewed as an array of characters, a character index is the corresponding index into this array. Note that character indices are not the same as byte indices as multi-byte characters may be present in the source file. Each character range entry includes a flag which indicates what kind of range is described: statement, assignment, method call, etc. Both code index ranges and character ranges may nest within other ranges, but they may not partially overlap. Thus, a given code index may correspond to several character range entries and in turn several character ranges, but there will be a smallest character range, and for each kind of range in which it is enclosed there will be a smallest character range. Similarly, a given character index may correspond to several character range entries and in turn several code index ranges, but there will be a smallest code index range, and for each kind of range in which it is enclosed there will be a smallest code index range. The character range entries may appear in any order.

The attribute permits multiple instances in a given location.

Since:
22