From d92aa94c6d6765c3fae0255176618ee36231b57c Mon Sep 17 00:00:00 2001 From: Igor Yakovlev Date: Tue, 6 Oct 2020 15:54:32 +0300 Subject: [PATCH] [Usages] Provide BWC change for 1.4.20 and mark it as deprecated Fixed #KT-42406 --- .../kotlin/idea/search/usagesSearch/utils.kt | 26 +++++++++++++++++++ 1 file changed, 26 insertions(+) diff --git a/idea/src/org/jetbrains/kotlin/idea/search/usagesSearch/utils.kt b/idea/src/org/jetbrains/kotlin/idea/search/usagesSearch/utils.kt index 4a5c1e7bd44..f8d38053eef 100644 --- a/idea/src/org/jetbrains/kotlin/idea/search/usagesSearch/utils.kt +++ b/idea/src/org/jetbrains/kotlin/idea/search/usagesSearch/utils.kt @@ -28,6 +28,7 @@ import org.jetbrains.kotlin.idea.caches.project.getNullableModuleInfo import org.jetbrains.kotlin.idea.caches.resolve.analyze import org.jetbrains.kotlin.idea.caches.resolve.getResolutionFacade import org.jetbrains.kotlin.idea.caches.resolve.resolveToDescriptorIfAny +import org.jetbrains.kotlin.idea.caches.resolve.resolveToParameterDescriptorIfAny import org.jetbrains.kotlin.idea.caches.resolve.util.getJavaMemberDescriptor import org.jetbrains.kotlin.idea.caches.resolve.util.getJavaMethodDescriptor import org.jetbrains.kotlin.idea.caches.resolve.util.getJavaOrKotlinMemberDescriptor @@ -59,6 +60,31 @@ import org.jetbrains.kotlin.scripting.definitions.findScriptDefinition import org.jetbrains.kotlin.types.KotlinType import org.jetbrains.kotlin.util.isValidOperator +@Deprecated( + "This method is obsolete and will be removed", + ReplaceWith( + "resolveToDescriptorIfAny(BodyResolveMode.FULL)", + "org.jetbrains.kotlin.idea.caches.resolve.resolveToDescriptorIfAny", + "org.jetbrains.kotlin.resolve.lazy.BodyResolveMode" + ) +) +@get:JvmName("getDescriptor") +val KtDeclaration.descriptorCompat: DeclarationDescriptor? + get() = if (this is KtParameter) this.descriptorCompat else this.resolveToDescriptorIfAny(BodyResolveMode.FULL) + +@Deprecated( + "This method is obsolete and will be removed", + ReplaceWith( + "resolveToParameterDescriptorIfAny(BodyResolveMode.FULL)", + "org.jetbrains.kotlin.idea.caches.resolve.resolveToParameterDescriptorIfAny", + "org.jetbrains.kotlin.resolve.lazy.BodyResolveMode" + ) +) + +@get:JvmName("getDescriptor") +val KtParameter.descriptorCompat: ValueParameterDescriptor? + get() = this.resolveToParameterDescriptorIfAny(BodyResolveMode.FULL) + class KotlinConstructorCallLazyDescriptorHandle(ktElement: KtDeclaration) : KotlinSearchUsagesSupport.ConstructorCallHandle { private val descriptor: ConstructorDescriptor? by lazyPub { ktElement.constructor }