blob: 9bf687c7e2a8c2b877c59d65d74af58b823d28eb [file] [log] [blame]
import java.util.function.Function;
abstract class Test {
abstract <T, A, R> Collector<T, A, R> create(Foo<A> foo, Function<A,R> fun);
abstract <Ts> Foo<Ts[]> toArray(Ts identity);
<Tf> Collector<Tf, ?, Tf> foo(Tf t) {
return create(toArray(t), a -> a[0]);
}
interface Collector<T1, A1, R1> {}
class Foo<D> {}
}