モジュール jdk.dynalink

クラスDefaultInternalObjectFilter

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

    public class DefaultInternalObjectFilter
    extends Object
    implements MethodHandleTransformer
    1組のフィルタリング・メソッド・ハンドルに委譲するDynamicLinkerFactory.setInternalObjectsFilter(MethodHandleTransformer)のデフォルトの実装。 パラメータ値をフィルタリングするためのObject(Object)型のメソッド・ハンドルと、戻り値をフィルタリングするための同じ型のもう1つのメソッド・ハンドルを取ります。 MethodHandleTransformer.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 - 一方または両方のフィルタが予想される型でない場合。