Filtered out incorrect suggestion of extension methods in smart completion
This commit is contained in:
committed by
valentin
parent
f43a9968ba
commit
427b3c80bc
@@ -92,7 +92,9 @@ class StaticMembers(val bindingContext: BindingContext, val resolveSession: Reso
|
||||
|
||||
val classObject = classDescriptor.getClassObjectDescriptor()
|
||||
if (classObject != null) {
|
||||
classObject.getDefaultType().getMemberScope().getAllDescriptors().forEach(::processMember)
|
||||
classObject.getDefaultType().getMemberScope().getAllDescriptors()
|
||||
.filter { it !is CallableDescriptor || it.getReceiverParameter() == null }
|
||||
.forEach(::processMember)
|
||||
}
|
||||
|
||||
var members = classDescriptor.getDefaultType().getMemberScope().getAllDescriptors()
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
class X {
|
||||
class object {
|
||||
fun String.f(): X = X()
|
||||
fun g(): X = X()
|
||||
}
|
||||
}
|
||||
|
||||
fun foo(): X {
|
||||
return <caret>
|
||||
}
|
||||
|
||||
// ABSENT: X.f
|
||||
// EXIST: X.g
|
||||
@@ -17,10 +17,13 @@
|
||||
package org.jetbrains.jet.completion;
|
||||
|
||||
import com.intellij.testFramework.TestDataPath;
|
||||
import junit.framework.Test;
|
||||
import junit.framework.TestSuite;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.jetbrains.jet.JetTestUtils;
|
||||
import org.jetbrains.jet.test.InnerTestClasses;
|
||||
import org.jetbrains.jet.test.TestMetadata;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.jetbrains.jet.JUnit3RunnerWithInners;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
@@ -17,10 +17,13 @@
|
||||
package org.jetbrains.jet.completion;
|
||||
|
||||
import com.intellij.testFramework.TestDataPath;
|
||||
import junit.framework.Test;
|
||||
import junit.framework.TestSuite;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.jetbrains.jet.JetTestUtils;
|
||||
import org.jetbrains.jet.test.InnerTestClasses;
|
||||
import org.jetbrains.jet.test.TestMetadata;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.jetbrains.jet.JUnit3RunnerWithInners;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
@@ -17,13 +17,9 @@
|
||||
package org.jetbrains.jet.completion;
|
||||
|
||||
import com.intellij.testFramework.TestDataPath;
|
||||
import junit.framework.Test;
|
||||
import junit.framework.TestSuite;
|
||||
import org.junit.runner.RunWith;
|
||||
import org.jetbrains.jet.JetTestUtils;
|
||||
import org.jetbrains.jet.test.InnerTestClasses;
|
||||
import org.jetbrains.jet.test.TestMetadata;
|
||||
import org.jetbrains.jet.JUnit3RunnerWithInners;
|
||||
import org.junit.runner.RunWith;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.regex.Pattern;
|
||||
@@ -446,6 +442,12 @@ public class JvmSmartCompletionTestGenerated extends AbstractJvmSmartCompletionT
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("NoExtensionMethodFromClassObject.kt")
|
||||
public void testNoExtensionMethodFromClassObject() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("idea/testData/completion/smart/NoExtensionMethodFromClassObject.kt");
|
||||
doTest(fileName);
|
||||
}
|
||||
|
||||
@TestMetadata("NoFunctionReferenceAfterQualifier.kt")
|
||||
public void testNoFunctionReferenceAfterQualifier() throws Exception {
|
||||
String fileName = JetTestUtils.navigationMetadata("idea/testData/completion/smart/NoFunctionReferenceAfterQualifier.kt");
|
||||
|
||||
Reference in New Issue
Block a user