Move: Fix reference binding for the case of default target package
#KT-6457 Fixed
This commit is contained in:
@@ -257,6 +257,7 @@ public fun JetSimpleNameExpression.getTopmostParentQualifiedExpressionForSelecto
|
|||||||
public fun JetElement.getQualifiedElementSelector(): JetElement? {
|
public fun JetElement.getQualifiedElementSelector(): JetElement? {
|
||||||
return when (this) {
|
return when (this) {
|
||||||
is JetSimpleNameExpression -> this
|
is JetSimpleNameExpression -> this
|
||||||
|
is JetCallExpression -> getCalleeExpression()
|
||||||
is JetQualifiedExpression -> {
|
is JetQualifiedExpression -> {
|
||||||
val selector = getSelectorExpression()
|
val selector = getSelectorExpression()
|
||||||
if (selector is JetCallExpression) selector.getCalleeExpression() else selector
|
if (selector is JetCallExpression) selector.getCalleeExpression() else selector
|
||||||
|
|||||||
+4
@@ -0,0 +1,4 @@
|
|||||||
|
class Y {
|
||||||
|
fun foo() {
|
||||||
|
}
|
||||||
|
}
|
||||||
+7
@@ -0,0 +1,7 @@
|
|||||||
|
package a
|
||||||
|
|
||||||
|
class X: Y() {
|
||||||
|
fun main() {
|
||||||
|
Y().foo()
|
||||||
|
}
|
||||||
|
}
|
||||||
+5
@@ -0,0 +1,5 @@
|
|||||||
|
class <caret>X: Y() {
|
||||||
|
fun main() {
|
||||||
|
Y().foo()
|
||||||
|
}
|
||||||
|
}
|
||||||
+4
@@ -0,0 +1,4 @@
|
|||||||
|
class Y {
|
||||||
|
fun foo() {
|
||||||
|
}
|
||||||
|
}
|
||||||
+5
@@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"mainFile": "X.kt",
|
||||||
|
"type": "MOVE_KOTLIN_TOP_LEVEL_DECLARATIONS",
|
||||||
|
"targetPackage": "a"
|
||||||
|
}
|
||||||
@@ -246,6 +246,12 @@ public class JetMoveTestGenerated extends AbstractJetMoveTest {
|
|||||||
doTest(fileName);
|
doTest(fileName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("kotlin/moveTopLevelDeclarations/misc/moveClassFromDefaultPackage/moveClassFromDefaultPackage.test")
|
||||||
|
public void testKotlin_moveTopLevelDeclarations_misc_moveClassFromDefaultPackage_MoveClassFromDefaultPackage() throws Exception {
|
||||||
|
String fileName = JetTestUtils.navigationMetadata("idea/testData/refactoring/move/kotlin/moveTopLevelDeclarations/misc/moveClassFromDefaultPackage/moveClassFromDefaultPackage.test");
|
||||||
|
doTest(fileName);
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("kotlin/moveTopLevelDeclarations/misc/moveClassToDefaultPackage/moveClassToDefaultPackage.test")
|
@TestMetadata("kotlin/moveTopLevelDeclarations/misc/moveClassToDefaultPackage/moveClassToDefaultPackage.test")
|
||||||
public void testKotlin_moveTopLevelDeclarations_misc_moveClassToDefaultPackage_MoveClassToDefaultPackage() throws Exception {
|
public void testKotlin_moveTopLevelDeclarations_misc_moveClassToDefaultPackage_MoveClassToDefaultPackage() throws Exception {
|
||||||
String fileName = JetTestUtils.navigationMetadata("idea/testData/refactoring/move/kotlin/moveTopLevelDeclarations/misc/moveClassToDefaultPackage/moveClassToDefaultPackage.test");
|
String fileName = JetTestUtils.navigationMetadata("idea/testData/refactoring/move/kotlin/moveTopLevelDeclarations/misc/moveClassToDefaultPackage/moveClassToDefaultPackage.test");
|
||||||
|
|||||||
Reference in New Issue
Block a user