diff --git a/plugins/kotlin/idea/tests/testData/refactoring/extractFunctionInplace/ExtractLocal.after.kt b/plugins/kotlin/idea/tests/testData/refactoring/extractFunctionInplace/ExtractLocal.after.kt new file mode 100644 index 000000000000..f307e8da46f9 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/extractFunctionInplace/ExtractLocal.after.kt @@ -0,0 +1,7 @@ +fun main() { + fun extracted() { + val a = "".takeIf { true } + } + + extracted() +} \ No newline at end of file diff --git a/plugins/kotlin/idea/tests/testData/refactoring/extractFunctionInplace/ExtractLocal.kt b/plugins/kotlin/idea/tests/testData/refactoring/extractFunctionInplace/ExtractLocal.kt new file mode 100644 index 000000000000..4973da33d736 --- /dev/null +++ b/plugins/kotlin/idea/tests/testData/refactoring/extractFunctionInplace/ExtractLocal.kt @@ -0,0 +1,3 @@ +fun main() { + val a = "".takeIf { true } +} \ No newline at end of file diff --git a/plugins/kotlin/refactorings/kotlin.refactorings.common/src/org/jetbrains/kotlin/idea/refactoring/introduce/extractFunction/AbstractInplaceExtractionHelper.kt b/plugins/kotlin/refactorings/kotlin.refactorings.common/src/org/jetbrains/kotlin/idea/refactoring/introduce/extractFunction/AbstractInplaceExtractionHelper.kt index 51a5dcb7553d..a08e6412ed76 100644 --- a/plugins/kotlin/refactorings/kotlin.refactorings.common/src/org/jetbrains/kotlin/idea/refactoring/introduce/extractFunction/AbstractInplaceExtractionHelper.kt +++ b/plugins/kotlin/refactorings/kotlin.refactorings.common/src/org/jetbrains/kotlin/idea/refactoring/introduce/extractFunction/AbstractInplaceExtractionHelper.kt @@ -10,6 +10,7 @@ import com.intellij.openapi.editor.Editor import com.intellij.openapi.keymap.KeymapUtil import com.intellij.openapi.project.Project import com.intellij.openapi.util.Disposer +import com.intellij.openapi.util.NlsSafe import com.intellij.openapi.util.TextRange import com.intellij.psi.PsiComment import com.intellij.psi.PsiElement @@ -29,6 +30,8 @@ import org.jetbrains.kotlin.idea.refactoring.introduce.extractionEngine.processD import org.jetbrains.kotlin.psi.KtCallExpression import org.jetbrains.kotlin.psi.KtExpression import org.jetbrains.kotlin.psi.KtFile +import org.jetbrains.kotlin.psi.KtNameReferenceExpression +import org.jetbrains.kotlin.psi.psiUtil.getCallNameExpression import kotlin.math.max import kotlin.math.min @@ -82,7 +85,7 @@ interface AbstractInplaceExtractionHelper