apply capture conversion for captured wildcard bound according to the direct supertype of parameterized type specification (IDEA-157586)

This commit is contained in:
Anna Kozlova
2016-06-22 15:24:15 +03:00
parent 61adc187bb
commit 7968b2bbbb
7 changed files with 37 additions and 5 deletions
@@ -1,4 +1,6 @@
import java.util.List;
import java.util.Set;
import java.util.function.Function;
class Test {
void f(List<? extends I<?>> list) {
@@ -11,4 +13,27 @@ class Test {
interface I<Z> {
}
}
class Test1 {
private static void getMarketDataValues(ScenarioMarketData marketData,
Set<? extends MarketDataId<?>> ids) {
ids.add(bar(marketData::getValue));
}
interface ScenarioMarketData {
<T> MarketDataBox<T> getValue(MarketDataId<T> id);
}
interface MarketDataBox<J> {
}
interface MarketDataId<M> {
}
static <T, V> T bar(Function<T, V> valueExtractor) {
return null;
}
}