インタフェースCharacterRangeTableAttribute
- すべてのスーパー・インタフェース:
Attribute<CharacterRangeTableAttribute>
,ClassFileElement
public sealed interface CharacterRangeTableAttribute extends Attribute<CharacterRangeTableAttribute>
CharacterRangeTable
属性をモデル化します。これは、ソース・ファイルの位置の範囲からcode
配列への索引の範囲への双方向マッピングです。 このエントリは、ClassFile.DebugElementsOption
で切り替えられたCodeModel
の要素を移動するときにCharacterRange
として提供されます。
CharacterRangeTable
属性は、「文字範囲エントリ」の配列で構成されます。 文字範囲エントリはフォレスト・データ構造を形成: 2つの範囲エントリは、結合されていないか、重複している場合は、code
配列索引とソース・ファイルの文字位置の両方で、一方のエントリをもう一方のエントリで囲む必要があります。 文字範囲エントリは任意の順序で表示されることがあります。
この属性は、Code
属性にのみ表示され、複数の出現を許可しますが、Code
属性では「一度表示」のみにする必要があります。 「ラベル」へのデータ依存性があります。
この属性はCodeBuilder
に送信できません。そのエントリはCharacterRange
を使用して作成でき、結果として、ビルドされたCode
属性には最大1つの属性インスタンスが含まれます。
この属性は、Java SEプラットフォームでは事前定義されていません。 これは、システムJavaコンパイラのリファレンス実装によって生成されるJDK固有の非標準属性で、jdk.compiler
モジュールによって定義されます。
- 導入されたバージョン:
- 24
- 関連項目:
-
メソッドのサマリー
修飾子と型メソッド説明文字範囲表のエントリを返します。static CharacterRangeTableAttribute
of
(List<CharacterRangeInfo> ranges) CharacterRangeTable
属性を返します。インタフェースjava.lang.classfile.Attributeで宣言されたメソッド
attributeMapper, attributeName
-
メソッドの詳細
-
characterRangeTable
-
of
static CharacterRangeTableAttribute of(List<CharacterRangeInfo> ranges) CharacterRangeTable
属性を返します。- APIのノート:
- 作成された属性は、
CodeBuilder
に書き込むことはできません。 かわりにCodeBuilder::characterRange
を使用してください。 - パラメータ:
ranges
- 文字範囲の説明- 戻り値:
CharacterRangeTable
属性
-