インタフェースAttributedElement
- すべてのスーパー・インタフェース:
ClassFileElement
- 既知のすべてのサブインタフェース:
ClassModel,CodeAttribute,CodeModel,FieldModel,MethodModel,RecordComponentInfo
public sealed interface AttributedElement extends ClassFileElement permits ClassModel, CodeModel, FieldModel, MethodModel, RecordComponentInfo (not exhaustive)
classファイル、フィールド、メソッド、Code属性、レコード・コンポーネントなどの属性を持つclassファイル構 を記述するClassFileElement。
特に指定がないかぎり、CompoundElementで検出できるほとんどの属性は、 ClassFileElementの対応する「メンバーシップ・サブインタフェース」を実装し、ClassFileBuilderに送信してビルド構 に統合できます。
- Java Virtual Machine仕様を参照してく さい:
-
4.7 属性
- シール済クラス階層グラフ:
- 導入されたバージョン:
- 24
- 関連 目:
-
メソッドのサマリー
修飾子と型メソッド説明この構 の属性を返します。findAttribute(AttributeMapper<T> attr) 名前で属性を検索します。findAttributes(AttributeMapper<T> attr) 名前で属性を検索します。
-
メソッドの詳細
-
attributes
-
findAttribute
default <T extends Attribute<T>> Optional<T> findAttribute(AttributeMapper<T> attr) 名前で属性を検索します。 これは、1つの構 で「最大1つのインスタンスを許可」する属性を検索するのに適しています。 1つの構 で複数のインスタンスを許可する属性を検索する 合、最初に一致するインスタンスが返されます。- APIのノート:
- これにより、簡単に属性を見つけ、別の
ClassFileBuilder(Consumer)に送信できます:MethodModel method = ... MethodBuilder mb = ... method.findAttribute(Attributes.code()).ifPresent(mb); - 型パラメータ:
T- 属性の型- パラメータ:
attr- 属性マッパー- 戻り値:
- 属性、または属性が存在しない 合は
Optional.empty()
-
findAttributes
default <T extends Attribute<T>> List<T> findAttributes(AttributeMapper<T> attr) 名前で属性を検索します。 これは、1つの構 で「複数のインスタンスを許可」する属性を検索するのに適しています。- 型パラメータ:
T- 属性の型- パラメータ:
attr- 属性マッパー- 戻り値:
- 属性、または属性が存在しない 合は空の
List
-