モジュール jdk.dynalink

クラスDefaultInternalObjectFilter

  • すべての実装されたインタフェース:
    MethodHandleTransformer


    public class DefaultInternalObjectFilter
    extends Object
    implements MethodHandleTransformer
    1組のフィルタリング・メソッド・ハンドルに委譲するDynamicLinkerFactory.setInternalObjectsFilter(MethodHandleTransformer)のデフォルトの実装。 パラメータ値をフィルタリングするためのObject(Object)型のメソッド・ハンドルと、戻り値をフィルタリングするための同じ型のもう1つのメソッド・ハンドルを取ります。 transform(MethodHandle)メソッドに渡されたメソッド・ハンドル、それらのパラメータ、およびObject型に宣言されている戻り値に対して、それらをパラメータと戻り値のフィルタとして適用します。 最後のObject[]パラメータでmethod handles that support variable arity callsも処理します。 パラメータ・フィルタは、パブリック・インタフェースを使用してアダプタにラップされた内部実行時オブジェクトを公開するためのラッピング・メソッドと、その逆アン・ラッピング・メソッドとしての戻り値フィルタと広く考えることができます。
    • コンストラクタの詳細

      • DefaultInternalObjectFilter

        public DefaultInternalObjectFilter​(MethodHandle parameterFilter,
                                           MethodHandle returnFilter)
        新しいフィルタを作成します。
        パラメータ:
        parameterFilter - メソッド・パラメータのフィルタ。 Object(Object)またはnullである必要があります。
        returnFilter - 戻り値のフィルタ。 Object(Object)またはnullである必要があります。
        例外:
        IllegalArgumentException - 一方または両方のフィルタが予想される型でない場合。
    • メソッドの詳細

      • transform

        public MethodHandle transform​(MethodHandle target)
        インタフェースからコピーされた説明:MethodHandleTransformer
        メソッド・ハンドルを変換します。
        定義:
        インタフェースMethodHandleTransformer内のtransform
        パラメータ:
        target - メソッド・ハンドルが変換されます。
        戻り値:
        変換されたメソッド・ハンドル。