PsiType (@Nullable PsiType psiClassType, @Nullable PsiLambdaExpression expr, boolean performFinalCheck) { psiClassType = LambdaUtil.normalizeFunctionalType(psiClassType); if (!isWildcardParameterized(psiClassType)) { return psiClassType; } if (expr != null && expr.hasFormalParameterTypes()) return getFunctionalTypeExplicit(psiClassType, expr, performFinalCheck); return psiClassType instanceof PsiClassType ? getNonWildcardParameterization((PsiClassType)psiClassType) : null; }