From 0ba506c1ecf3e97c77be32decf4404943913a332 Mon Sep 17 00:00:00 2001 From: "Vitaliy.Bibaev" Date: Fri, 17 Aug 2018 18:12:32 +0300 Subject: [PATCH] Use partial resolve --- .../kotlin/idea/debugger/sequence/psi/KotlinPsiUtil.kt | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/idea/idea-jvm/src/org/jetbrains/kotlin/idea/debugger/sequence/psi/KotlinPsiUtil.kt b/idea/idea-jvm/src/org/jetbrains/kotlin/idea/debugger/sequence/psi/KotlinPsiUtil.kt index 33381adc6b5..4e04dd3e9f7 100644 --- a/idea/idea-jvm/src/org/jetbrains/kotlin/idea/debugger/sequence/psi/KotlinPsiUtil.kt +++ b/idea/idea-jvm/src/org/jetbrains/kotlin/idea/debugger/sequence/psi/KotlinPsiUtil.kt @@ -9,6 +9,7 @@ import org.jetbrains.kotlin.psi.KtExpression import org.jetbrains.kotlin.renderer.DescriptorRenderer import org.jetbrains.kotlin.resolve.calls.callUtil.getResolvedCall import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameSafe +import org.jetbrains.kotlin.resolve.lazy.BodyResolveMode import org.jetbrains.kotlin.resolve.scopes.receivers.ReceiverValue import org.jetbrains.kotlin.types.FlexibleType import org.jetbrains.kotlin.types.KotlinType @@ -29,12 +30,12 @@ object KotlinPsiUtil { } fun KtExpression.resolveType(): KotlinType = - this.analyze().getType(this)!! + this.analyze(BodyResolveMode.PARTIAL).getType(this)!! fun KtCallExpression.callName(): String = this.calleeExpression!!.text fun KtCallExpression.receiver(): ReceiverValue? { - val resolvedCall = getResolvedCall(analyze()) ?: return null + val resolvedCall = getResolvedCall(analyze(BodyResolveMode.PARTIAL)) ?: return null return resolvedCall.dispatchReceiver ?: resolvedCall.extensionReceiver }