Optimize imports remove reference to get extension function

#KT-3397 Fixed
This commit is contained in:
Natalia.Ukhorskaya
2013-03-12 11:38:19 +04:00
parent fa5fcbbad1
commit 4039202806
5 changed files with 29 additions and 0 deletions
@@ -25,6 +25,7 @@ import com.intellij.psi.PsiReferenceService;
import com.intellij.psi.impl.source.resolve.reference.ReferenceProvidersRegistry;
import com.intellij.psi.util.PsiTreeUtil;
import org.jetbrains.annotations.NotNull;
import org.jetbrains.annotations.Nullable;
import org.jetbrains.jet.JetNodeTypes;
import org.jetbrains.jet.lexer.JetTokens;
@@ -36,6 +37,14 @@ public class JetArrayAccessExpression extends JetReferenceExpression {
super(node);
}
@Nullable
@Override
public PsiReference getReference() {
PsiReference[] references = getReferences();
if (references.length == 1) return references[0];
else return null;
}
@NotNull
@Override
public PsiReference[] getReferences() {
@@ -0,0 +1,4 @@
import test1.MyClass
import test1.get
val s = MyClass()[1]
@@ -0,0 +1,4 @@
import test1.MyClass
import test1.get
val s = MyClass()[1]
@@ -0,0 +1,8 @@
package test1
public class MyClass {
}
public fun MyClass.get(i: Int): Int {
return 1
}
@@ -34,6 +34,10 @@ public class OptimizeImportsMultiFileTest extends CodeInsightTestCase {
doTest(getTestName(false) + "/main.kt", getTestName(false) + "/MyJavaClass.java");
}
public void testArrayAccessExpression() throws Exception {
doTest(getTestName(false) + "/main.kt", getTestName(false) + "/myClass.kt");
}
public void doTest(String... fileNames) throws Exception {
configureByFiles(null, fileNames);
invokeFormatFile();