diff --git a/idea/src/org/jetbrains/kotlin/idea/highlighter/markers/DeclaredHeaderMarker.kt b/idea/src/org/jetbrains/kotlin/idea/highlighter/markers/DeclaredHeaderMarker.kt index 1eb9fe3e213..8adbe6458b1 100644 --- a/idea/src/org/jetbrains/kotlin/idea/highlighter/markers/DeclaredHeaderMarker.kt +++ b/idea/src/org/jetbrains/kotlin/idea/highlighter/markers/DeclaredHeaderMarker.kt @@ -16,17 +16,18 @@ package org.jetbrains.kotlin.idea.highlighter.markers -import com.intellij.psi.NavigatablePsiElement import org.jetbrains.kotlin.analyzer.ModuleInfo import org.jetbrains.kotlin.descriptors.* import org.jetbrains.kotlin.idea.caches.resolve.ModuleProductionSourceInfo import org.jetbrains.kotlin.idea.caches.resolve.ModuleTestSourceInfo import org.jetbrains.kotlin.idea.caches.resolve.findModuleDescriptor import org.jetbrains.kotlin.idea.core.toDescriptor +import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.psi.KtDeclaration import org.jetbrains.kotlin.resolve.DescriptorToSourceUtils import org.jetbrains.kotlin.resolve.MultiTargetPlatform import org.jetbrains.kotlin.resolve.checkers.HeaderImplDeclarationChecker +import org.jetbrains.kotlin.resolve.descriptorUtil.module import org.jetbrains.kotlin.resolve.getMultiTargetPlatform fun ModuleDescriptor.commonModuleOrNull(): ModuleDescriptor? { @@ -70,13 +71,20 @@ fun getHeaderDeclarationTooltip(declaration: KtDeclaration): String? { } fun navigateToHeaderDeclaration(declaration: KtDeclaration) { - val descriptor = declaration.toDescriptor() as? MemberDescriptor ?: return - val platformModuleDescriptor = declaration.containingKtFile.findModuleDescriptor() - - val commonModuleDescriptor = platformModuleDescriptor.commonModuleOrNull() ?: return - val headerDeclaration = DescriptorToSourceUtils.descriptorToDeclaration( - commonModuleDescriptor.declarationOf(descriptor) ?: return - ) as? NavigatablePsiElement ?: return - - headerDeclaration.navigate(false) + declaration.headerDeclarationIfAny()?.navigate(false) } + +internal fun MemberDescriptor.headerDescriptor() = module.commonModuleOrNull()?.declarationOf(this) + +internal fun KtDeclaration.headerDeclarationIfAny(): KtDeclaration? { + val headerDescriptor = (toDescriptor() as? MemberDescriptor)?.headerDescriptor() ?: return null + return DescriptorToSourceUtils.descriptorToDeclaration(headerDescriptor) as? KtDeclaration +} + +internal fun KtDeclaration.liftToHeader(): KtDeclaration? { + return when { + hasModifier(KtTokens.HEADER_KEYWORD) -> this + hasModifier(KtTokens.IMPL_KEYWORD) -> headerDeclarationIfAny() + else -> null + } +} \ No newline at end of file diff --git a/idea/src/org/jetbrains/kotlin/idea/highlighter/markers/ImplementedHeaderMarker.kt b/idea/src/org/jetbrains/kotlin/idea/highlighter/markers/ImplementedHeaderMarker.kt index 337b00c6ca3..678b1028ffb 100644 --- a/idea/src/org/jetbrains/kotlin/idea/highlighter/markers/ImplementedHeaderMarker.kt +++ b/idea/src/org/jetbrains/kotlin/idea/highlighter/markers/ImplementedHeaderMarker.kt @@ -18,7 +18,6 @@ package org.jetbrains.kotlin.idea.highlighter.markers import com.intellij.codeInsight.daemon.impl.PsiElementListNavigator import com.intellij.ide.util.DefaultPsiElementCellRenderer -import com.intellij.psi.NavigatablePsiElement import org.jetbrains.kotlin.descriptors.* import org.jetbrains.kotlin.idea.caches.resolve.findModuleDescriptor import org.jetbrains.kotlin.idea.core.toDescriptor @@ -56,12 +55,7 @@ fun getPlatformImplementationTooltip(declaration: KtDeclaration): String? { } fun navigateToPlatformImplementation(e: MouseEvent?, declaration: KtDeclaration) { - val descriptor = declaration.toDescriptor() as? MemberDescriptor ?: return - val commonModuleDescriptor = declaration.containingKtFile.findModuleDescriptor() - - val implementations = commonModuleDescriptor.allImplementingModules.flatMap { - it.implementationsOf(descriptor) - }.mapNotNull { DescriptorToSourceUtils.descriptorToDeclaration(it) as? NavigatablePsiElement } + val implementations = declaration.headerImplementations() if (implementations.isEmpty()) return val renderer = DefaultPsiElementCellRenderer() @@ -70,4 +64,12 @@ fun navigateToPlatformImplementation(e: MouseEvent?, declaration: KtDeclaration) "Choose implementation of ${declaration.name}", "Implementations of ${declaration.name}", renderer) +} + +internal fun KtDeclaration.headerImplementations(): Set { + val descriptor = toDescriptor() as? MemberDescriptor ?: return emptySet() + val commonModuleDescriptor = containingKtFile.findModuleDescriptor() + return commonModuleDescriptor.allImplementingModules.flatMap { + it.implementationsOf(descriptor) + }.mapNotNullTo(LinkedHashSet()) { DescriptorToSourceUtils.descriptorToDeclaration(it) as? KtDeclaration } } \ No newline at end of file diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/AutomaticOverloadsRenamer.kt b/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/AutomaticOverloadsRenamer.kt index b729e92bd8f..8c7d2091131 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/AutomaticOverloadsRenamer.kt +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/AutomaticOverloadsRenamer.kt @@ -25,13 +25,16 @@ import com.intellij.refactoring.rename.naming.AutomaticRenamerFactory import com.intellij.usageView.UsageInfo import org.jetbrains.annotations.TestOnly import org.jetbrains.kotlin.descriptors.CallableDescriptor +import org.jetbrains.kotlin.descriptors.CallableMemberDescriptor import org.jetbrains.kotlin.descriptors.ClassDescriptor import org.jetbrains.kotlin.descriptors.FunctionDescriptor import org.jetbrains.kotlin.idea.caches.resolve.getResolutionFacade import org.jetbrains.kotlin.idea.caches.resolve.resolveToDescriptor +import org.jetbrains.kotlin.idea.highlighter.markers.headerDescriptor import org.jetbrains.kotlin.idea.util.getAllAccessibleFunctions import org.jetbrains.kotlin.idea.util.getResolutionScope import org.jetbrains.kotlin.incremental.components.NoLookupLocation +import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.psi.KtNamedFunction import org.jetbrains.kotlin.psi.UserDataProperty import org.jetbrains.kotlin.resolve.lazy.BodyResolveMode @@ -63,16 +66,20 @@ class AutomaticOverloadsRenamer(function: KtNamedFunction, newName: String) : Au private fun KtNamedFunction.getOverloads(): Collection { val name = nameAsName ?: return emptyList() val resolutionFacade = getResolutionFacade() - val descriptor = this.resolveToDescriptor() as CallableDescriptor + val descriptor = this.resolveToDescriptor() as FunctionDescriptor val context = resolutionFacade.analyze(this, BodyResolveMode.FULL) val scope = getResolutionScope(context, resolutionFacade) val extensionReceiverClass = descriptor.extensionReceiverParameter?.type?.constructor?.declarationDescriptor as? ClassDescriptor - val overloadsFromFunctionScope = scope.getAllAccessibleFunctions(name) - if (extensionReceiverClass == null) return overloadsFromFunctionScope + if (descriptor.isImpl && descriptor.headerDescriptor() != null) return emptyList() - val overloadsFromExtensionReceiver = extensionReceiverClass.unsubstitutedMemberScope.getContributedFunctions(name, NoLookupLocation.FROM_IDE) - return overloadsFromFunctionScope + overloadsFromExtensionReceiver + val result = LinkedHashSet() + result += scope.getAllAccessibleFunctions(name) + if (extensionReceiverClass != null) { + result += extensionReceiverClass.unsubstitutedMemberScope.getContributedFunctions(name, NoLookupLocation.FROM_IDE) + } + + return result } class AutomaticOverloadsRenamerFactory : AutomaticRenamerFactory { diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinFunctionProcessor.kt b/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinFunctionProcessor.kt index 060d4d655c9..6a4ea94872f 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinFunctionProcessor.kt +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinFunctionProcessor.kt @@ -35,9 +35,11 @@ import com.intellij.util.SmartList import org.jetbrains.kotlin.asJava.LightClassUtil import org.jetbrains.kotlin.asJava.elements.KtLightElement import org.jetbrains.kotlin.asJava.elements.KtLightMethod +import org.jetbrains.kotlin.asJava.namedUnwrappedElement import org.jetbrains.kotlin.asJava.unwrapped import org.jetbrains.kotlin.descriptors.FunctionDescriptor import org.jetbrains.kotlin.idea.caches.resolve.resolveToDescriptor +import org.jetbrains.kotlin.idea.highlighter.markers.liftToHeader import org.jetbrains.kotlin.idea.refactoring.Pass import org.jetbrains.kotlin.idea.refactoring.checkSuperMethods import org.jetbrains.kotlin.idea.refactoring.checkSuperMethodsWithPopup @@ -106,7 +108,11 @@ class RenameKotlinFunctionProcessor : RenameKotlinPsiProcessor() { get() = originalDeclaration } + private fun substituteForHeaderOrImpl(element: PsiElement?) = (element?.namedUnwrappedElement as? KtNamedDeclaration)?.liftToHeader() + override fun substituteElementToRename(element: PsiElement?, editor: Editor?): PsiElement? { + substituteForHeaderOrImpl(element)?.let { return it } + val wrappedMethod = wrapPsiMethod(element) ?: return element val deepestSuperMethods = wrappedMethod.findDeepestSuperMethods() @@ -139,6 +145,8 @@ class RenameKotlinFunctionProcessor : RenameKotlinPsiProcessor() { renameCallback.pass(elementToProcess) } + substituteForHeaderOrImpl(element)?.let { return preprocessAndPass(it) } + val wrappedMethod = wrapPsiMethod(element) ?: return val deepestSuperMethods = wrappedMethod.findDeepestSuperMethods() diff --git a/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinPsiProcessor.kt b/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinPsiProcessor.kt index aef558557a4..73a10810a04 100644 --- a/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinPsiProcessor.kt +++ b/idea/src/org/jetbrains/kotlin/idea/refactoring/rename/RenameKotlinPsiProcessor.kt @@ -27,12 +27,16 @@ import com.intellij.psi.search.searches.ReferencesSearch import com.intellij.refactoring.listeners.RefactoringElementListener import com.intellij.refactoring.rename.RenamePsiElementProcessor import com.intellij.usageView.UsageInfo +import org.jetbrains.kotlin.asJava.namedUnwrappedElement import org.jetbrains.kotlin.asJava.toLightMethods import org.jetbrains.kotlin.idea.core.KotlinNameSuggester import org.jetbrains.kotlin.idea.core.quoteIfNeeded +import org.jetbrains.kotlin.idea.highlighter.markers.headerDeclarationIfAny +import org.jetbrains.kotlin.idea.highlighter.markers.headerImplementations import org.jetbrains.kotlin.idea.search.ideaExtensions.KotlinReferencesSearchOptions import org.jetbrains.kotlin.idea.search.ideaExtensions.KotlinReferencesSearchParameters import org.jetbrains.kotlin.idea.search.projectScope +import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.name.Name import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.getStrictParentOfType @@ -58,8 +62,24 @@ abstract class RenameKotlinPsiProcessor : RenamePsiElementProcessor() { } override fun prepareRenaming(element: PsiElement, newName: String?, allRenames: MutableMap, scope: SearchScope) { - if (newName != null && !KotlinNameSuggester.isIdentifier(newName)) { - allRenames[element] = newName.quoteIfNeeded() + if (newName == null) return + + val safeNewName = newName.quoteIfNeeded() + + if (!KotlinNameSuggester.isIdentifier(newName)) { + allRenames[element] = safeNewName + } + + val declaration = element.namedUnwrappedElement as? KtNamedDeclaration + if (declaration != null) { + when { + declaration.hasModifier(KtTokens.HEADER_KEYWORD) -> declaration + declaration.hasModifier(KtTokens.IMPL_KEYWORD) -> declaration.headerDeclarationIfAny() + else -> null + }?.let { headerDeclaration -> + allRenames[headerDeclaration] = safeNewName + headerDeclaration.headerImplementations().forEach { allRenames[it] = safeNewName } + } } } diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/Common/Common.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/Common/Common.iml new file mode 100644 index 00000000000..0ecf9949f6c --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/Common/Common.iml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/Common/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/Common/src/test/test.kt new file mode 100644 index 00000000000..660c28f019a --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/Common/src/test/test.kt @@ -0,0 +1,9 @@ +package test + +header class Baz +header class Bar + +fun test() { + val baz: Baz = Baz() + val bar: Bar = Bar() +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/JS/JS.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/JS/JS.iml new file mode 100644 index 00000000000..82d3e6bdf49 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/JS/JS.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/JS/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/JS/src/test/test.kt new file mode 100644 index 00000000000..aa4e5f96857 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/JS/src/test/test.kt @@ -0,0 +1,9 @@ +package test + +impl class Baz +impl class Bar + +fun test() { + val baz: Baz = Baz() + val bar: Bar = Bar() +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/JVM/JVM.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/JVM/JVM.iml new file mode 100644 index 00000000000..c3173af9ec7 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/JVM/JVM.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/JVM/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/JVM/src/test/test.kt new file mode 100644 index 00000000000..aa4e5f96857 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/after/JVM/src/test/test.kt @@ -0,0 +1,9 @@ +package test + +impl class Baz +impl class Bar + +fun test() { + val baz: Baz = Baz() + val bar: Bar = Bar() +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/Common/Common.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/Common/Common.iml new file mode 100644 index 00000000000..0ecf9949f6c --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/Common/Common.iml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/Common/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/Common/src/test/test.kt new file mode 100644 index 00000000000..552ec1e374d --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/Common/src/test/test.kt @@ -0,0 +1,9 @@ +package test + +header class /*rename*/Foo +header class Bar + +fun test() { + val foo: Foo = Foo() + val bar: Bar = Bar() +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/JS/JS.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/JS/JS.iml new file mode 100644 index 00000000000..82d3e6bdf49 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/JS/JS.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/JS/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/JS/src/test/test.kt new file mode 100644 index 00000000000..b8ca046b503 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/JS/src/test/test.kt @@ -0,0 +1,9 @@ +package test + +impl class Foo +impl class Bar + +fun test() { + val foo: Foo = Foo() + val bar: Bar = Bar() +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/JVM/JVM.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/JVM/JVM.iml new file mode 100644 index 00000000000..c3173af9ec7 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/JVM/JVM.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/JVM/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/JVM/src/test/test.kt new file mode 100644 index 00000000000..b8ca046b503 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/before/JVM/src/test/test.kt @@ -0,0 +1,9 @@ +package test + +impl class Foo +impl class Bar + +fun test() { + val foo: Foo = Foo() + val bar: Bar = Bar() +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/headersAndImplsByHeaderClass.test b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/headersAndImplsByHeaderClass.test new file mode 100644 index 00000000000..a6df20e9631 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/headersAndImplsByHeaderClass.test @@ -0,0 +1,6 @@ +{ + "type": "MARKED_ELEMENT", + "file": "Common/src/test/test.kt", + "newName": "Baz", + "isMultiModule": "true" +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/Common/Common.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/Common/Common.iml new file mode 100644 index 00000000000..0ecf9949f6c --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/Common/Common.iml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/Common/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/Common/src/test/test.kt new file mode 100644 index 00000000000..57ca1ec6e76 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/Common/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +header fun baz() +header fun baz(n: Int) +header fun bar(n: Int) + +fun test() { + baz() + baz(1) + bar(1) +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/JS/JS.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/JS/JS.iml new file mode 100644 index 00000000000..82d3e6bdf49 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/JS/JS.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/JS/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/JS/src/test/test.kt new file mode 100644 index 00000000000..122344f6ec5 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/JS/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +impl fun baz() { } +impl fun baz(n: Int) { } +impl fun bar(n: Int) { } + +fun test() { + baz() + baz(1) + bar(1) +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/JVM/JVM.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/JVM/JVM.iml new file mode 100644 index 00000000000..c3173af9ec7 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/JVM/JVM.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/JVM/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/JVM/src/test/test.kt new file mode 100644 index 00000000000..122344f6ec5 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/after/JVM/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +impl fun baz() { } +impl fun baz(n: Int) { } +impl fun bar(n: Int) { } + +fun test() { + baz() + baz(1) + bar(1) +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/Common/Common.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/Common/Common.iml new file mode 100644 index 00000000000..0ecf9949f6c --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/Common/Common.iml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/Common/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/Common/src/test/test.kt new file mode 100644 index 00000000000..9c24b7a6847 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/Common/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +header fun /*rename*/foo() +header fun foo(n: Int) +header fun bar(n: Int) + +fun test() { + foo() + foo(1) + bar(1) +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/JS/JS.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/JS/JS.iml new file mode 100644 index 00000000000..82d3e6bdf49 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/JS/JS.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/JS/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/JS/src/test/test.kt new file mode 100644 index 00000000000..f2b7f613043 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/JS/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +impl fun foo() { } +impl fun foo(n: Int) { } +impl fun bar(n: Int) { } + +fun test() { + foo() + foo(1) + bar(1) +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/JVM/JVM.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/JVM/JVM.iml new file mode 100644 index 00000000000..c3173af9ec7 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/JVM/JVM.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/JVM/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/JVM/src/test/test.kt new file mode 100644 index 00000000000..f2b7f613043 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/before/JVM/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +impl fun foo() { } +impl fun foo(n: Int) { } +impl fun bar(n: Int) { } + +fun test() { + foo() + foo(1) + bar(1) +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/headersAndImplsByHeaderFun.test b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/headersAndImplsByHeaderFun.test new file mode 100644 index 00000000000..6bae1474a7c --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/headersAndImplsByHeaderFun.test @@ -0,0 +1,6 @@ +{ + "type": "MARKED_ELEMENT", + "file": "Common/src/test/test.kt", + "newName": "baz", + "isMultiModule": "true" +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/Common/Common.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/Common/Common.iml new file mode 100644 index 00000000000..0ecf9949f6c --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/Common/Common.iml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/Common/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/Common/src/test/test.kt new file mode 100644 index 00000000000..634154d2d7b --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/Common/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +header var baz: Int +header var bar: Int + +fun test() { + baz + baz = 1 + bar + bar = 1 +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/JS/JS.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/JS/JS.iml new file mode 100644 index 00000000000..82d3e6bdf49 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/JS/JS.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/JS/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/JS/src/test/test.kt new file mode 100644 index 00000000000..276da6c0845 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/JS/src/test/test.kt @@ -0,0 +1,16 @@ +package test + +impl var baz: Int + get() = 1 + set(value) {} + +impl var bar: Int + get() = 1 + set(value) {} + +fun test() { + baz + baz = 1 + bar + bar = 1 +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/JVM/JVM.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/JVM/JVM.iml new file mode 100644 index 00000000000..c3173af9ec7 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/JVM/JVM.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/JVM/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/JVM/src/test/test.kt new file mode 100644 index 00000000000..276da6c0845 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/after/JVM/src/test/test.kt @@ -0,0 +1,16 @@ +package test + +impl var baz: Int + get() = 1 + set(value) {} + +impl var bar: Int + get() = 1 + set(value) {} + +fun test() { + baz + baz = 1 + bar + bar = 1 +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/Common/Common.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/Common/Common.iml new file mode 100644 index 00000000000..0ecf9949f6c --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/Common/Common.iml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/Common/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/Common/src/test/test.kt new file mode 100644 index 00000000000..92465e1527f --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/Common/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +header var /*rename*/foo: Int +header var bar: Int + +fun test() { + foo + foo = 1 + bar + bar = 1 +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/JS/JS.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/JS/JS.iml new file mode 100644 index 00000000000..82d3e6bdf49 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/JS/JS.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/JS/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/JS/src/test/test.kt new file mode 100644 index 00000000000..f0c77f94d02 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/JS/src/test/test.kt @@ -0,0 +1,16 @@ +package test + +impl var foo: Int + get() = 1 + set(value) {} + +impl var bar: Int + get() = 1 + set(value) {} + +fun test() { + foo + foo = 1 + bar + bar = 1 +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/JVM/JVM.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/JVM/JVM.iml new file mode 100644 index 00000000000..c3173af9ec7 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/JVM/JVM.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/JVM/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/JVM/src/test/test.kt new file mode 100644 index 00000000000..f0c77f94d02 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/before/JVM/src/test/test.kt @@ -0,0 +1,16 @@ +package test + +impl var foo: Int + get() = 1 + set(value) {} + +impl var bar: Int + get() = 1 + set(value) {} + +fun test() { + foo + foo = 1 + bar + bar = 1 +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/headersAndImplsByHeaderVal.test b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/headersAndImplsByHeaderVal.test new file mode 100644 index 00000000000..6bae1474a7c --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/headersAndImplsByHeaderVal.test @@ -0,0 +1,6 @@ +{ + "type": "MARKED_ELEMENT", + "file": "Common/src/test/test.kt", + "newName": "baz", + "isMultiModule": "true" +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/Common/Common.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/Common/Common.iml new file mode 100644 index 00000000000..0ecf9949f6c --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/Common/Common.iml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/Common/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/Common/src/test/test.kt new file mode 100644 index 00000000000..660c28f019a --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/Common/src/test/test.kt @@ -0,0 +1,9 @@ +package test + +header class Baz +header class Bar + +fun test() { + val baz: Baz = Baz() + val bar: Bar = Bar() +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/JS/JS.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/JS/JS.iml new file mode 100644 index 00000000000..82d3e6bdf49 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/JS/JS.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/JS/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/JS/src/test/test.kt new file mode 100644 index 00000000000..aa4e5f96857 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/JS/src/test/test.kt @@ -0,0 +1,9 @@ +package test + +impl class Baz +impl class Bar + +fun test() { + val baz: Baz = Baz() + val bar: Bar = Bar() +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/JVM/JVM.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/JVM/JVM.iml new file mode 100644 index 00000000000..c3173af9ec7 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/JVM/JVM.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/JVM/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/JVM/src/test/test.kt new file mode 100644 index 00000000000..aa4e5f96857 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/after/JVM/src/test/test.kt @@ -0,0 +1,9 @@ +package test + +impl class Baz +impl class Bar + +fun test() { + val baz: Baz = Baz() + val bar: Bar = Bar() +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/Common/Common.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/Common/Common.iml new file mode 100644 index 00000000000..0ecf9949f6c --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/Common/Common.iml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/Common/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/Common/src/test/test.kt new file mode 100644 index 00000000000..6c9dd4952f7 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/Common/src/test/test.kt @@ -0,0 +1,9 @@ +package test + +header class Foo +header class Bar + +fun test() { + val foo: Foo = Foo() + val bar: Bar = Bar() +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/JS/JS.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/JS/JS.iml new file mode 100644 index 00000000000..82d3e6bdf49 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/JS/JS.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/JS/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/JS/src/test/test.kt new file mode 100644 index 00000000000..e8161be723e --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/JS/src/test/test.kt @@ -0,0 +1,9 @@ +package test + +impl class /*rename*/Foo +impl class Bar + +fun test() { + val foo: Foo = Foo() + val bar: Bar = Bar() +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/JVM/JVM.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/JVM/JVM.iml new file mode 100644 index 00000000000..c3173af9ec7 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/JVM/JVM.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/JVM/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/JVM/src/test/test.kt new file mode 100644 index 00000000000..b8ca046b503 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/before/JVM/src/test/test.kt @@ -0,0 +1,9 @@ +package test + +impl class Foo +impl class Bar + +fun test() { + val foo: Foo = Foo() + val bar: Bar = Bar() +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/headersAndImplsByImplClass.test b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/headersAndImplsByImplClass.test new file mode 100644 index 00000000000..46d0ba3b861 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/headersAndImplsByImplClass.test @@ -0,0 +1,6 @@ +{ + "type": "MARKED_ELEMENT", + "file": "JS/src/test/test.kt", + "newName": "Baz", + "isMultiModule": "true" +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/Common/Common.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/Common/Common.iml new file mode 100644 index 00000000000..0ecf9949f6c --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/Common/Common.iml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/Common/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/Common/src/test/test.kt new file mode 100644 index 00000000000..57ca1ec6e76 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/Common/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +header fun baz() +header fun baz(n: Int) +header fun bar(n: Int) + +fun test() { + baz() + baz(1) + bar(1) +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/JS/JS.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/JS/JS.iml new file mode 100644 index 00000000000..82d3e6bdf49 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/JS/JS.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/JS/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/JS/src/test/test.kt new file mode 100644 index 00000000000..122344f6ec5 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/JS/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +impl fun baz() { } +impl fun baz(n: Int) { } +impl fun bar(n: Int) { } + +fun test() { + baz() + baz(1) + bar(1) +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/JVM/JVM.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/JVM/JVM.iml new file mode 100644 index 00000000000..c3173af9ec7 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/JVM/JVM.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/JVM/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/JVM/src/test/test.kt new file mode 100644 index 00000000000..122344f6ec5 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/after/JVM/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +impl fun baz() { } +impl fun baz(n: Int) { } +impl fun bar(n: Int) { } + +fun test() { + baz() + baz(1) + bar(1) +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/Common/Common.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/Common/Common.iml new file mode 100644 index 00000000000..0ecf9949f6c --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/Common/Common.iml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/Common/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/Common/src/test/test.kt new file mode 100644 index 00000000000..922453b2613 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/Common/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +header fun foo() +header fun foo(n: Int) +header fun bar(n: Int) + +fun test() { + foo() + foo(1) + bar(1) +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/JS/JS.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/JS/JS.iml new file mode 100644 index 00000000000..82d3e6bdf49 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/JS/JS.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/JS/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/JS/src/test/test.kt new file mode 100644 index 00000000000..523a26f0f14 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/JS/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +impl fun /*rename*/foo() { } +impl fun foo(n: Int) { } +impl fun bar(n: Int) { } + +fun test() { + foo() + foo(1) + bar(1) +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/JVM/JVM.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/JVM/JVM.iml new file mode 100644 index 00000000000..c3173af9ec7 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/JVM/JVM.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/JVM/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/JVM/src/test/test.kt new file mode 100644 index 00000000000..f2b7f613043 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/before/JVM/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +impl fun foo() { } +impl fun foo(n: Int) { } +impl fun bar(n: Int) { } + +fun test() { + foo() + foo(1) + bar(1) +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/headersAndImplsByImplFun.test b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/headersAndImplsByImplFun.test new file mode 100644 index 00000000000..933fd3546c1 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/headersAndImplsByImplFun.test @@ -0,0 +1,6 @@ +{ + "type": "MARKED_ELEMENT", + "file": "JS/src/test/test.kt", + "newName": "baz", + "isMultiModule": "true" +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/Common/Common.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/Common/Common.iml new file mode 100644 index 00000000000..0ecf9949f6c --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/Common/Common.iml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/Common/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/Common/src/test/test.kt new file mode 100644 index 00000000000..634154d2d7b --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/Common/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +header var baz: Int +header var bar: Int + +fun test() { + baz + baz = 1 + bar + bar = 1 +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/JS/JS.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/JS/JS.iml new file mode 100644 index 00000000000..82d3e6bdf49 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/JS/JS.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/JS/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/JS/src/test/test.kt new file mode 100644 index 00000000000..276da6c0845 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/JS/src/test/test.kt @@ -0,0 +1,16 @@ +package test + +impl var baz: Int + get() = 1 + set(value) {} + +impl var bar: Int + get() = 1 + set(value) {} + +fun test() { + baz + baz = 1 + bar + bar = 1 +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/JVM/JVM.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/JVM/JVM.iml new file mode 100644 index 00000000000..c3173af9ec7 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/JVM/JVM.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/JVM/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/JVM/src/test/test.kt new file mode 100644 index 00000000000..276da6c0845 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/after/JVM/src/test/test.kt @@ -0,0 +1,16 @@ +package test + +impl var baz: Int + get() = 1 + set(value) {} + +impl var bar: Int + get() = 1 + set(value) {} + +fun test() { + baz + baz = 1 + bar + bar = 1 +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/Common/Common.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/Common/Common.iml new file mode 100644 index 00000000000..0ecf9949f6c --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/Common/Common.iml @@ -0,0 +1,19 @@ + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/Common/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/Common/src/test/test.kt new file mode 100644 index 00000000000..7c355181821 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/Common/src/test/test.kt @@ -0,0 +1,11 @@ +package test + +header var foo: Int +header var bar: Int + +fun test() { + foo + foo = 1 + bar + bar = 1 +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/JS/JS.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/JS/JS.iml new file mode 100644 index 00000000000..82d3e6bdf49 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/JS/JS.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/JS/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/JS/src/test/test.kt new file mode 100644 index 00000000000..17ae6853407 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/JS/src/test/test.kt @@ -0,0 +1,16 @@ +package test + +impl var /*rename*/foo: Int + get() = 1 + set(value) {} + +impl var bar: Int + get() = 1 + set(value) {} + +fun test() { + foo + foo = 1 + bar + bar = 1 +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/JVM/JVM.iml b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/JVM/JVM.iml new file mode 100644 index 00000000000..c3173af9ec7 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/JVM/JVM.iml @@ -0,0 +1,20 @@ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/JVM/src/test/test.kt b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/JVM/src/test/test.kt new file mode 100644 index 00000000000..f0c77f94d02 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/before/JVM/src/test/test.kt @@ -0,0 +1,16 @@ +package test + +impl var foo: Int + get() = 1 + set(value) {} + +impl var bar: Int + get() = 1 + set(value) {} + +fun test() { + foo + foo = 1 + bar + bar = 1 +} \ No newline at end of file diff --git a/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/headersAndImplsByImplVal.test b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/headersAndImplsByImplVal.test new file mode 100644 index 00000000000..933fd3546c1 --- /dev/null +++ b/idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/headersAndImplsByImplVal.test @@ -0,0 +1,6 @@ +{ + "type": "MARKED_ELEMENT", + "file": "JS/src/test/test.kt", + "newName": "baz", + "isMultiModule": "true" +} \ No newline at end of file diff --git a/idea/tests/org/jetbrains/kotlin/idea/refactoring/rename/MultiModuleRenameTestGenerated.java b/idea/tests/org/jetbrains/kotlin/idea/refactoring/rename/MultiModuleRenameTestGenerated.java index 1f5dad8a2a0..f061569c208 100644 --- a/idea/tests/org/jetbrains/kotlin/idea/refactoring/rename/MultiModuleRenameTestGenerated.java +++ b/idea/tests/org/jetbrains/kotlin/idea/refactoring/rename/MultiModuleRenameTestGenerated.java @@ -41,4 +41,40 @@ public class MultiModuleRenameTestGenerated extends AbstractMultiModuleRenameTes String fileName = KotlinTestUtils.navigationMetadata("idea/testData/refactoring/renameMultiModule/fileNotUnderSourceRootWithNamesakeUnderSourceRoot/fileNotUnderSourceRootWithNamesakeUnderSourceRoot.test"); doTest(fileName); } + + @TestMetadata("headersAndImplsByHeaderClass/headersAndImplsByHeaderClass.test") + public void testHeadersAndImplsByHeaderClass_HeadersAndImplsByHeaderClass() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderClass/headersAndImplsByHeaderClass.test"); + doTest(fileName); + } + + @TestMetadata("headersAndImplsByHeaderFun/headersAndImplsByHeaderFun.test") + public void testHeadersAndImplsByHeaderFun_HeadersAndImplsByHeaderFun() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderFun/headersAndImplsByHeaderFun.test"); + doTest(fileName); + } + + @TestMetadata("headersAndImplsByHeaderVal/headersAndImplsByHeaderVal.test") + public void testHeadersAndImplsByHeaderVal_HeadersAndImplsByHeaderVal() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/refactoring/renameMultiModule/headersAndImplsByHeaderVal/headersAndImplsByHeaderVal.test"); + doTest(fileName); + } + + @TestMetadata("headersAndImplsByImplClass/headersAndImplsByImplClass.test") + public void testHeadersAndImplsByImplClass_HeadersAndImplsByImplClass() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/refactoring/renameMultiModule/headersAndImplsByImplClass/headersAndImplsByImplClass.test"); + doTest(fileName); + } + + @TestMetadata("headersAndImplsByImplFun/headersAndImplsByImplFun.test") + public void testHeadersAndImplsByImplFun_HeadersAndImplsByImplFun() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/refactoring/renameMultiModule/headersAndImplsByImplFun/headersAndImplsByImplFun.test"); + doTest(fileName); + } + + @TestMetadata("headersAndImplsByImplVal/headersAndImplsByImplVal.test") + public void testHeadersAndImplsByImplVal_HeadersAndImplsByImplVal() throws Exception { + String fileName = KotlinTestUtils.navigationMetadata("idea/testData/refactoring/renameMultiModule/headersAndImplsByImplVal/headersAndImplsByImplVal.test"); + doTest(fileName); + } }