From f79c0a63d2c332f1ccc8d0c9aca50770980043f0 Mon Sep 17 00:00:00 2001 From: peter Date: Wed, 3 Jan 2018 16:12:19 +0100 Subject: [PATCH] java completion: don't suggest inacessible method/constructor references (IDEA-182311) --- .../FunctionalExpressionCompletionProvider.java | 16 ++++++++-------- .../smartType/NoInaccessibleConstructorRef.java | 12 ++++++++++++ .../completion/SmartType18CompletionTest.java | 6 ++++++ 3 files changed, 26 insertions(+), 8 deletions(-) create mode 100644 java/java-tests/testData/codeInsight/completion/smartType/NoInaccessibleConstructorRef.java diff --git a/java/java-impl/src/com/intellij/codeInsight/completion/FunctionalExpressionCompletionProvider.java b/java/java-impl/src/com/intellij/codeInsight/completion/FunctionalExpressionCompletionProvider.java index 21c05936c6c8..afbe0c58af60 100644 --- a/java/java-impl/src/com/intellij/codeInsight/completion/FunctionalExpressionCompletionProvider.java +++ b/java/java-impl/src/com/intellij/codeInsight/completion/FunctionalExpressionCompletionProvider.java @@ -28,7 +28,6 @@ import com.intellij.openapi.util.text.StringUtil; import com.intellij.psi.*; import com.intellij.psi.codeStyle.CodeStyleManager; import com.intellij.psi.codeStyle.JavaCodeStyleManager; -import com.intellij.psi.impl.source.resolve.JavaResolveUtil; import com.intellij.psi.impl.source.resolve.graphInference.FunctionalInterfaceParameterizationUtil; import com.intellij.psi.impl.source.tree.java.MethodReferenceResolver; import com.intellij.psi.util.PsiTreeUtil; @@ -155,7 +154,7 @@ public class FunctionalExpressionCompletionProvider extends CompletionProvider s = + } +} + +class Foo { + private Foo() { + } +} diff --git a/java/java-tests/testSrc/com/intellij/java/codeInsight/completion/SmartType18CompletionTest.java b/java/java-tests/testSrc/com/intellij/java/codeInsight/completion/SmartType18CompletionTest.java index 4186bd2251d2..6f3269835e63 100644 --- a/java/java-tests/testSrc/com/intellij/java/codeInsight/completion/SmartType18CompletionTest.java +++ b/java/java-tests/testSrc/com/intellij/java/codeInsight/completion/SmartType18CompletionTest.java @@ -263,4 +263,10 @@ public void testConvertToObjectStream() { configureByTestName(); myFixture.assertPreferredCompletionItems(0, "isEmpty", "s -> ", "getSomeGenericValue"); } + + public void testNoInaccessibleConstructorRef() { + configureByTestName(); + assertOrderedEquals(myFixture.getLookupElementStrings(), "() -> "); + } + }