RFR (S): JDK-8039916: AnnotatedType.getType() of a Executable parameters may return wrong type

Paul Sandoz paul.sandoz at oracle.com
Wed Jun 4 10:34:56 UTC 2014


On Jun 4, 2014, at 12:25 PM, Paul Sandoz <Paul.Sandoz at oracle.com> wrote:
> 
> You might consider the following a more streamy way, not tested! up to you :-)
> 
>    private static Object[][] provider() {
>        Stream<? extends Executable> s = filterData(Test.class.getMethods(), null);
>        s = Stream.concat(s, filterData(Test.class.getConstructors(), null));
>        s = Stream.concat(s, filterData(Test.class.getConstructors(), null));
>        return streamToArray(s);
>    }
> 
>    private static Stream<? extends Executable> filterData(Executable[] es, Class<?> c) {
>        return Stream.of(es).filter(m -> m.getDeclaringClass() == c);
>    }

Plus you can drop the "? extends" bit of "? extends Executable", that was a hangover from some other mini experiment.

Paul.





More information about the core-libs-dev mailing list