モジュール jdk.dynalink

クラスDefaultInternalObjectFilter

java.lang.Object
jdk.dynalink.linker.support.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 - 一方または両方のフィルタが予想される型でない場合。