Minor refactoring: get rid of js.getJetTypeFqName usage in intention
This commit is contained in:
+7
-3
@@ -23,9 +23,10 @@ import org.jetbrains.kotlin.idea.caches.resolve.analyze
|
|||||||
import org.jetbrains.kotlin.idea.caches.resolve.resolveToCall
|
import org.jetbrains.kotlin.idea.caches.resolve.resolveToCall
|
||||||
import org.jetbrains.kotlin.idea.core.replaced
|
import org.jetbrains.kotlin.idea.core.replaced
|
||||||
import org.jetbrains.kotlin.idea.inspections.IntentionBasedInspection
|
import org.jetbrains.kotlin.idea.inspections.IntentionBasedInspection
|
||||||
import org.jetbrains.kotlin.js.descriptorUtils.getJetTypeFqName
|
|
||||||
import org.jetbrains.kotlin.psi.*
|
import org.jetbrains.kotlin.psi.*
|
||||||
|
import org.jetbrains.kotlin.resolve.DescriptorUtils
|
||||||
import org.jetbrains.kotlin.resolve.calls.callUtil.getType
|
import org.jetbrains.kotlin.resolve.calls.callUtil.getType
|
||||||
|
import org.jetbrains.kotlin.types.KotlinType
|
||||||
import org.jetbrains.kotlin.types.expressions.OperatorConventions
|
import org.jetbrains.kotlin.types.expressions.OperatorConventions
|
||||||
import org.jetbrains.kotlin.types.isFlexible
|
import org.jetbrains.kotlin.types.isFlexible
|
||||||
|
|
||||||
@@ -67,10 +68,13 @@ class RemoveRedundantCallsOfConversionMethodsIntention : SelfTargetingRangeInten
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private fun KotlinType.getFqNameAsString(): String? =
|
||||||
|
constructor.declarationDescriptor?.let { DescriptorUtils.getFqName(it).asString() }
|
||||||
|
|
||||||
private fun KtExpression.isApplicableReceiverExpression(qualifiedName: String): Boolean {
|
private fun KtExpression.isApplicableReceiverExpression(qualifiedName: String): Boolean {
|
||||||
return when (this) {
|
return when (this) {
|
||||||
is KtStringTemplateExpression -> String::class.qualifiedName
|
is KtStringTemplateExpression -> String::class.qualifiedName
|
||||||
is KtConstantExpression -> getType(analyze())?.getJetTypeFqName(false)
|
is KtConstantExpression -> getType(analyze())?.getFqNameAsString()
|
||||||
else -> {
|
else -> {
|
||||||
val resolvedCall = resolveToCall()
|
val resolvedCall = resolveToCall()
|
||||||
if ((resolvedCall?.call?.callElement as? KtBinaryExpression)?.operationToken in OperatorConventions.COMPARISON_OPERATIONS) {
|
if ((resolvedCall?.call?.callElement as? KtBinaryExpression)?.operationToken in OperatorConventions.COMPARISON_OPERATIONS) {
|
||||||
@@ -80,7 +84,7 @@ class RemoveRedundantCallsOfConversionMethodsIntention : SelfTargetingRangeInten
|
|||||||
resolvedCall?.candidateDescriptor?.returnType?.let {
|
resolvedCall?.candidateDescriptor?.returnType?.let {
|
||||||
if (it.isFlexible()) null
|
if (it.isFlexible()) null
|
||||||
else if (it.isMarkedNullable && parent !is KtSafeQualifiedExpression) null
|
else if (it.isMarkedNullable && parent !is KtSafeQualifiedExpression) null
|
||||||
else it.getJetTypeFqName(false)
|
else it.getFqNameAsString()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user