我正在拦截一个返回Future的方法,其中我知道"T"是"E"的子类。我如何使用net.bytebuddy.matcher.ElementMatchers
的returns((方法来实现这一点。我想要returns(Future<isSubtypeOf(E.class)>)
之类的东西。
您可以自己实现ElementMatcher<MethodDescription>
,这是最简单的。ByteBuddy在TypeDescription.Genric
API上提供方法,允许您读取所有类型信息。否则,ElementMatchers
为returnsGeneric
提供了工厂方法,您也可以在其中匹配参数化类型。