Move: Do not rebind references to the declaration under move
This commit is contained in:
@@ -88,7 +88,7 @@ public fun JetElement.getInternalReferencesToUpdateOnPackageNameChange(packageNa
|
|||||||
if (descriptor == null || !descriptor.canBeReferencedViaImport()) continue
|
if (descriptor == null || !descriptor.canBeReferencedViaImport()) continue
|
||||||
|
|
||||||
val declaration = DescriptorToDeclarationUtil.getDeclaration(file, descriptor)
|
val declaration = DescriptorToDeclarationUtil.getDeclaration(file, descriptor)
|
||||||
if (declaration == null || isAncestor(declaration, true)) continue
|
if (declaration == null || isAncestor(declaration, false)) continue
|
||||||
|
|
||||||
val fqName = DescriptorUtils.getFqName(descriptor)
|
val fqName = DescriptorUtils.getFqName(descriptor)
|
||||||
if (!fqName.isSafe()) continue
|
if (!fqName.isSafe()) continue
|
||||||
|
|||||||
+5
@@ -0,0 +1,5 @@
|
|||||||
|
package source
|
||||||
|
|
||||||
|
class B {
|
||||||
|
|
||||||
|
}
|
||||||
+5
@@ -0,0 +1,5 @@
|
|||||||
|
package target
|
||||||
|
|
||||||
|
class A(val a: A) {
|
||||||
|
val klass = javaClass<A>()
|
||||||
|
}
|
||||||
+9
@@ -0,0 +1,9 @@
|
|||||||
|
package source
|
||||||
|
|
||||||
|
class <caret>A(val a: A) {
|
||||||
|
val klass = javaClass<A>()
|
||||||
|
}
|
||||||
|
|
||||||
|
class B {
|
||||||
|
|
||||||
|
}
|
||||||
+5
@@ -0,0 +1,5 @@
|
|||||||
|
{
|
||||||
|
"mainFile": "source/A.kt",
|
||||||
|
"type": "MOVE_KOTLIN_TOP_LEVEL_DECLARATIONS",
|
||||||
|
"targetPackage": "target"
|
||||||
|
}
|
||||||
@@ -258,6 +258,12 @@ public class JetMoveTestGenerated extends AbstractJetMoveTest {
|
|||||||
doTest(fileName);
|
doTest(fileName);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@TestMetadata("kotlin/moveTopLevelDeclarations/misc/selfReferences/selfReferences.test")
|
||||||
|
public void testKotlin_moveTopLevelDeclarations_misc_selfReferences_SelfReferences() throws Exception {
|
||||||
|
String fileName = JetTestUtils.navigationMetadata("idea/testData/refactoring/move/kotlin/moveTopLevelDeclarations/misc/selfReferences/selfReferences.test");
|
||||||
|
doTest(fileName);
|
||||||
|
}
|
||||||
|
|
||||||
@TestMetadata("kotlin/moveTopLevelDeclarations/moveClassToFile/moveClassToFile.test")
|
@TestMetadata("kotlin/moveTopLevelDeclarations/moveClassToFile/moveClassToFile.test")
|
||||||
public void testKotlin_moveTopLevelDeclarations_moveClassToFile_MoveClassToFile() throws Exception {
|
public void testKotlin_moveTopLevelDeclarations_moveClassToFile_MoveClassToFile() throws Exception {
|
||||||
String fileName = JetTestUtils.navigationMetadata("idea/testData/refactoring/move/kotlin/moveTopLevelDeclarations/moveClassToFile/moveClassToFile.test");
|
String fileName = JetTestUtils.navigationMetadata("idea/testData/refactoring/move/kotlin/moveTopLevelDeclarations/moveClassToFile/moveClassToFile.test");
|
||||||
|
|||||||
Reference in New Issue
Block a user