IDEA-166167 Idea should not suggest AbstractClass::new for lambda

This commit is contained in:
peter
2017-01-27 15:36:38 +01:00
parent 62b3180656
commit 4c57457916
2 changed files with 2 additions and 1 deletions
@@ -150,7 +150,7 @@ public class FunctionalExpressionCompletionProvider extends CompletionProvider<C
Consumer<PsiType> consumer = eachReturnType -> {
PsiClass psiClass = PsiUtil.resolveClassInType(eachReturnType);
if (psiClass == null || psiClass instanceof PsiTypeParameter) return;
if (psiClass == null || psiClass instanceof PsiTypeParameter || psiClass.hasModifierProperty(PsiModifier.ABSTRACT)) return;
if (eachReturnType.getArrayDimensions() == 0) {
PsiMethod[] constructors = psiClass.getConstructors();
@@ -104,6 +104,7 @@ public class SmartType18CompletionTest extends LightFixtureCompletionTestCase {
myFixture.addClass("package foo; public class ImplBar implements intf.Intf<String> {}");
myFixture.addClass("package foo; public class ImplFoo<T> implements intf.Intf<T> {}");
myFixture.addClass("package foo; public class ImplIncompatible implements intf.Intf<Integer> {}");
myFixture.addClass("package foo; public abstract class ImplAbstract implements intf.Intf<String> { public ImplAbstract() {} }");
myFixture.addClass("package foo; class ImplInaccessible implements intf.Intf<String> {}");
configureByTestName();