method refs: captured wildcard at receiver position

EA-77434 - assert: PsiMethodReferenceCompatibilityConstraint.getParameterizedTypeSubstitutor
This commit is contained in:
Anna Kozlova
2016-01-04 19:25:03 +01:00
parent 82773c69e0
commit 88586f6ab9
3 changed files with 29 additions and 0 deletions
@@ -0,0 +1,22 @@
import java.util.Collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Set;
import java.util.function.Function;
import java.util.function.Supplier;
import java.util.stream.Collectors;
class Test {
static <T> Map<T, Integer> combine(Collection<Map<? extends T, Integer>> pMaps) {
Function<Map<? extends T, Integer>, Set<? extends Map.Entry<? extends T, Integer>>> entrySet = Map::entrySet;
return pMaps.stream()
.map(entrySet)
.flatMap(Collection::stream)
.collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue,
(pEntry1, pEntry2) -> pEntry1 + pEntry2,
(Supplier<HashMap<T, Integer>>) HashMap::new
)
);
}
}