Move KtDotQualifiedExpression.deleteFirstReceiver to Utils.kt
This commit is contained in:
committed by
Mikhail Glukhikh
parent
39d0cd7237
commit
c2e5fc5215
@@ -18,7 +18,6 @@ package org.jetbrains.kotlin.idea.intentions
|
|||||||
|
|
||||||
import com.intellij.openapi.editor.Editor
|
import com.intellij.openapi.editor.Editor
|
||||||
import org.jetbrains.kotlin.idea.inspections.IntentionBasedInspection
|
import org.jetbrains.kotlin.idea.inspections.IntentionBasedInspection
|
||||||
import org.jetbrains.kotlin.lexer.KtTokens
|
|
||||||
import org.jetbrains.kotlin.psi.*
|
import org.jetbrains.kotlin.psi.*
|
||||||
import org.jetbrains.kotlin.psi.psiUtil.anyDescendantOfType
|
import org.jetbrains.kotlin.psi.psiUtil.anyDescendantOfType
|
||||||
|
|
||||||
@@ -78,15 +77,6 @@ class ReplaceSingleLineLetIntention : SelfTargetingOffsetIndependentIntention<Kt
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun KtDotQualifiedExpression.deleteFirstReceiver(): KtExpression {
|
|
||||||
val receiver = receiverExpression
|
|
||||||
when (receiver) {
|
|
||||||
is KtDotQualifiedExpression -> receiver.deleteFirstReceiver()
|
|
||||||
else -> selectorExpression?.let { return this.replace(it) as KtExpression }
|
|
||||||
}
|
|
||||||
return this
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun isApplicableTo(element: KtCallExpression): Boolean {
|
override fun isApplicableTo(element: KtCallExpression): Boolean {
|
||||||
if (!isLetMethod(element)) return false
|
if (!isLetMethod(element)) return false
|
||||||
val lambdaExpression = element.lambdaArguments.firstOrNull()?.getLambdaExpression() ?: return false
|
val lambdaExpression = element.lambdaArguments.firstOrNull()?.getLambdaExpression() ?: return false
|
||||||
|
|||||||
@@ -22,12 +22,8 @@ import org.jetbrains.kotlin.builtins.KotlinBuiltIns
|
|||||||
import org.jetbrains.kotlin.descriptors.CallableDescriptor
|
import org.jetbrains.kotlin.descriptors.CallableDescriptor
|
||||||
import org.jetbrains.kotlin.descriptors.ValueParameterDescriptor
|
import org.jetbrains.kotlin.descriptors.ValueParameterDescriptor
|
||||||
import org.jetbrains.kotlin.idea.caches.resolve.analyze
|
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.setType
|
||||||
import org.jetbrains.kotlin.idea.core.ShortenReferences
|
|
||||||
import org.jetbrains.kotlin.idea.references.mainReference
|
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.lexer.KtTokens
|
||||||
import org.jetbrains.kotlin.psi.*
|
import org.jetbrains.kotlin.psi.*
|
||||||
import org.jetbrains.kotlin.resolve.BindingContext
|
import org.jetbrains.kotlin.resolve.BindingContext
|
||||||
@@ -267,3 +263,11 @@ fun KtDotQualifiedExpression.replaceFirstReceiver(
|
|||||||
return this
|
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
|
||||||
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user