インタフェースjava.lang.constant.DirectMethodHandleDescの
使用
パッケージ
説明
クラスやメソッド・ハンドルなどのランタイム・エンティティ用に「名目記述子」を表すクラスおよびインタフェース、および定数プール・エントリや
invokedynamic
コール・サイトなどのクラス・ファイル・エンティティ用に「名目記述子」を表すクラスおよびインタフェース。-
java.lang.constantでのDirectMethodHandleDescの使用
修飾子と型フィールド説明static final DirectMethodHandleDesc
ConstantDescs.BSM_ENUM_CONSTANT
static final DirectMethodHandleDesc
ConstantDescs.BSM_EXPLICIT_CAST
MethodHandleDesc
representingConstantBootstraps.explicitCast(Lookup, String, Class, Object)
ConstantBootstraps.explicitCast}static final DirectMethodHandleDesc
ConstantDescs.BSM_GET_STATIC_FINAL
static final DirectMethodHandleDesc
ConstantDescs.BSM_INVOKE
static final DirectMethodHandleDesc
ConstantDescs.BSM_NULL_CONSTANT
static final DirectMethodHandleDesc
ConstantDescs.BSM_PRIMITIVE_CLASS
static final DirectMethodHandleDesc
ConstantDescs.BSM_VARHANDLE_ARRAY
static final DirectMethodHandleDesc
ConstantDescs.BSM_VARHANDLE_FIELD
static final DirectMethodHandleDesc
ConstantDescs.BSM_VARHANDLE_STATIC_FIELD
修飾子と型メソッド説明DynamicConstantDesc.bootstrapMethod()
この定数のブートストラップ・メソッドを記述するMethodHandleDesc
を返します。static DirectMethodHandleDesc
MethodHandleDesc.of
(DirectMethodHandleDesc.Kind kind, ClassDesc owner, String name, String lookupDescriptor) 宣言されたメソッドの呼出し、コンストラクタの呼出し、またはフィールドへのアクセスに対応するMethodHandleDescを作成します。static DirectMethodHandleDesc
ConstantDescs.ofCallsiteBootstrap
(ClassDesc owner, String name, ClassDesc returnType, ClassDesc... paramTypes) invokedynamic
呼出しサイトのブートストラップ・メソッドに対応するMethodHandleDesc
を返します。これは先頭のパラメータ・タイプがLookup
、String
、MethodType
である静的メソッドです。static DirectMethodHandleDesc
ConstantDescs.ofConstantBootstrap
(ClassDesc owner, String name, ClassDesc returnType, ClassDesc... paramTypes) 動的定数に対するブートストラップ・メソッドに対応するMethodHandleDesc
を返します。これは先行引数がLookup
、String
、Class
であるstaticメソッドです。static DirectMethodHandleDesc
MethodHandleDesc.ofConstructor
(ClassDesc owner, ClassDesc... paramTypes) コンストラクタの呼出しに対応するMethodHandleDescを返しますstatic DirectMethodHandleDesc
MethodHandleDesc.ofField
(DirectMethodHandleDesc.Kind kind, ClassDesc owner, String fieldName, ClassDesc fieldType) フィールドにアクセスするメソッド・ハンドルに対応するMethodHandleDescを作成します。static DirectMethodHandleDesc
MethodHandleDesc.ofMethod
(DirectMethodHandleDesc.Kind kind, ClassDesc owner, String name, MethodTypeDesc lookupMethodType) 宣言されたメソッドまたはコンストラクタの呼出しに対応するMethodHandleDescを作成します。修飾子と型メソッド説明static DynamicCallSiteDesc
DynamicCallSiteDesc.of
(DirectMethodHandleDesc bootstrapMethod, MethodTypeDesc invocationType) ブートストラップ・メソッドに静的引数がなく、nameパラメータがConstantDescs.DEFAULT_NAME
のinvokedynamic
コール・サイトに名目記述子を作成します。static DynamicCallSiteDesc
DynamicCallSiteDesc.of
(DirectMethodHandleDesc bootstrapMethod, String invocationName, MethodTypeDesc invocationType) ブートストラップ・メソッドに静的な引数がないinvokedynamic
コール・サイトの名目記述子を作成します。static DynamicCallSiteDesc
DynamicCallSiteDesc.of
(DirectMethodHandleDesc bootstrapMethod, String invocationName, MethodTypeDesc invocationType, ConstantDesc... bootstrapArgs) invokedynamic
callサイトの名目記述子を作成します。static <T> DynamicConstantDesc<T>
DynamicConstantDesc.of
(DirectMethodHandleDesc bootstrapMethod) ブートストラップが静的引数を持たない動的定数の名目記述子を返します。この値は、nameパラメータがConstantDescs.DEFAULT_NAME
で、typeパラメータは常にブートストラップ・メソッドの戻り型と同じです。static <T> DynamicConstantDesc<T>
DynamicConstantDesc.of
(DirectMethodHandleDesc bootstrapMethod, ConstantDesc... bootstrapArgs) 名前パラメータがConstantDescs.DEFAULT_NAME
で、typeパラメータが常にブートストラップ・メソッドの戻り型と同じである動的定数の名目記述子を返します。static <T> ConstantDesc
DynamicConstantDesc.ofCanonical
(DirectMethodHandleDesc bootstrapMethod, String constantName, ClassDesc constantType, ConstantDesc[] bootstrapArgs) 定数ブートストラップが既知の単一記述子で、より具体的な記述子タイプ(例: ClassDesc)が使用可能な場合は、動的定数の名目記述子を返し、より具体的な型に変換します。static <T> DynamicConstantDesc<T>
DynamicConstantDesc.ofNamed
(DirectMethodHandleDesc bootstrapMethod, String constantName, ClassDesc constantType, ConstantDesc... bootstrapArgs) 動的定数の名目記述子を返します。修飾子コンストラクタ説明protected
DynamicConstantDesc
(DirectMethodHandleDesc bootstrapMethod, String constantName, ClassDesc constantType, ConstantDesc... bootstrapArgs) 動的定数の名目記述子を作成します。