lambda param type: get rid of non-substituted types

This commit is contained in:
Anna Kozlova
2015-04-27 21:27:37 +02:00
parent 6aa33bd9c3
commit b5733493a3
@@ -69,12 +69,7 @@ public class PsiParameterImpl extends JavaStubPsiElement<PsiParameterStub> imple
final PsiLambdaExpression lambdaExpression = PsiTreeUtil.getParentOfType(param, PsiLambdaExpression.class);
if (lambdaExpression != null) {
PsiType type = LambdaUtil.getFunctionalInterfaceType(lambdaExpression, true);
if (type == null) {
type = LambdaUtil.getFunctionalInterfaceType(lambdaExpression, false);
}
type = FunctionalInterfaceParameterizationUtil.getGroundTargetType(type, lambdaExpression);
PsiType type = FunctionalInterfaceParameterizationUtil.getGroundTargetType(LambdaUtil.getFunctionalInterfaceType(lambdaExpression, true), lambdaExpression);
if (type instanceof PsiIntersectionType) {
final PsiType[] conjuncts = ((PsiIntersectionType)type).getConjuncts();
for (PsiType conjunct : conjuncts) {