java.lang.Object
jdk.dynalink.linker.support.DefaultInternalObjectFilter
- 所有已实现的接口:
-
MethodHandleTransformer
一个默认实现,用于
DynamicLinkerFactory.setInternalObjectsFilter(MethodHandleTransformer)
,它委托给一对过滤方法句柄。它接受一个Object(Object)
类型的方法句柄,用于过滤参数值,另一个相同类型的方法句柄,用于过滤返回值。它将它们应用为参数和返回值过滤器,传递给其transform(MethodHandle)
方法的方法句柄,在那些声明为具有类型Object
的参数和返回值上。还处理支持支持可变参数调用的方法句柄
,带有最后一个Object[]
参数。您可以广义地将参数过滤器视为一个包装方法,用于将内部运行时对象暴露为带有一些公共接口的适配器包装,将返回值过滤器视为其逆向解包方法。
-
Constructor Summary
ConstructorDescriptionDefaultInternalObjectFilter
(MethodHandle parameterFilter, MethodHandle returnFilter) 创建一个新的过滤器。 -
Method Summary
-
Constructor Details
-
DefaultInternalObjectFilter
创建一个新的过滤器。- 参数:
-
parameterFilter
- 方法参数的过滤器。必须是Object(Object)
类型,或null
。 -
returnFilter
- 返回值的过滤器。必须是Object(Object)
类型,或null
。 - 抛出:
-
IllegalArgumentException
- 如果一个或两个过滤器不是预期类型。
-
-
Method Details
-
transform
从接口复制的描述:MethodHandleTransformer
转换一个方法句柄。- 指定者:
-
transform
在接口MethodHandleTransformer
- 参数:
-
target
- 正在被转换的方法句柄。 - 返回:
- 转换后的方法句柄。
-