From c2e5fc5215477fb79d3dc2516d50424ee15ce301 Mon Sep 17 00:00:00 2001 From: shiraji Date: Mon, 20 Feb 2017 20:41:05 +0900 Subject: [PATCH] Move KtDotQualifiedExpression.deleteFirstReceiver to Utils.kt --- .../idea/intentions/ReplaceSingleLineLetIntention.kt | 10 ---------- .../org/jetbrains/kotlin/idea/intentions/Utils.kt | 12 ++++++++---- 2 files changed, 8 insertions(+), 14 deletions(-) diff --git a/idea/src/org/jetbrains/kotlin/idea/intentions/ReplaceSingleLineLetIntention.kt b/idea/src/org/jetbrains/kotlin/idea/intentions/ReplaceSingleLineLetIntention.kt index 2cc3a9abb52..26ef7329955 100644 --- a/idea/src/org/jetbrains/kotlin/idea/intentions/ReplaceSingleLineLetIntention.kt +++ b/idea/src/org/jetbrains/kotlin/idea/intentions/ReplaceSingleLineLetIntention.kt @@ -18,7 +18,6 @@ package org.jetbrains.kotlin.idea.intentions import com.intellij.openapi.editor.Editor import org.jetbrains.kotlin.idea.inspections.IntentionBasedInspection -import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.psi.psiUtil.anyDescendantOfType @@ -78,15 +77,6 @@ class ReplaceSingleLineLetIntention : SelfTargetingOffsetIndependentIntention receiver.deleteFirstReceiver() - else -> selectorExpression?.let { return this.replace(it) as KtExpression } - } - return this - } - override fun isApplicableTo(element: KtCallExpression): Boolean { if (!isLetMethod(element)) return false val lambdaExpression = element.lambdaArguments.firstOrNull()?.getLambdaExpression() ?: return false diff --git a/idea/src/org/jetbrains/kotlin/idea/intentions/Utils.kt b/idea/src/org/jetbrains/kotlin/idea/intentions/Utils.kt index 77348e6bcb3..ce22d3c7eab 100644 --- a/idea/src/org/jetbrains/kotlin/idea/intentions/Utils.kt +++ b/idea/src/org/jetbrains/kotlin/idea/intentions/Utils.kt @@ -22,12 +22,8 @@ import org.jetbrains.kotlin.builtins.KotlinBuiltIns import org.jetbrains.kotlin.descriptors.CallableDescriptor import org.jetbrains.kotlin.descriptors.ValueParameterDescriptor import org.jetbrains.kotlin.idea.caches.resolve.analyze -import org.jetbrains.kotlin.idea.caches.resolve.analyzeAndGetResult import org.jetbrains.kotlin.idea.core.setType -import org.jetbrains.kotlin.idea.core.ShortenReferences import org.jetbrains.kotlin.idea.references.mainReference -import org.jetbrains.kotlin.js.descriptorUtils.nameIfStandardType -import org.jetbrains.kotlin.idea.util.IdeDescriptorRenderers import org.jetbrains.kotlin.lexer.KtTokens import org.jetbrains.kotlin.psi.* import org.jetbrains.kotlin.resolve.BindingContext @@ -267,3 +263,11 @@ fun KtDotQualifiedExpression.replaceFirstReceiver( return this } +fun KtDotQualifiedExpression.deleteFirstReceiver(): KtExpression { + val receiver = receiverExpression + when (receiver) { + is KtDotQualifiedExpression -> receiver.deleteFirstReceiver() + else -> selectorExpression?.let { return this.replace(it) as KtExpression } + } + return this +}