インタフェース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 CharacterRangeTableAttributeof(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属性
-