applicability constraints by method reference (IDEA-122018)

This commit is contained in:
Anna Kozlova
2014-04-30 12:41:08 +04:00
parent 9e9c7e3463
commit f144943412
6 changed files with 131 additions and 96 deletions

View File

@@ -0,0 +1,27 @@
import java.util.Arrays;
import java.util.List;
import java.util.function.Function;
class Base {
interface Seq<E> extends Iterable<E> {
static <E> Seq<E> of(Iterable<? extends E> source) {
return null;
}
<R> Seq<R> map(Function<? super E, ? extends R> mapper);
}
}
class Test3 extends Base {
static void test3(Seq<String[]> many) {
Seq<Seq<String>> mapped = many.map(Arrays::asList).map(Seq::of);
Seq<Seq<String>> mappedL = many.map(Arrays::asList).map(list -> Seq.of(list));
}
public static <T> List<T> asList(T[] a) {
return null;
}
}