From 83e23aafe50b34065579fd267c8fba0c1e6cbf52 Mon Sep 17 00:00:00 2001 From: Alexey Sedunov Date: Wed, 18 Mar 2015 18:03:36 +0300 Subject: [PATCH] Fix retrieval of class constructor --- .../jetbrains/kotlin/idea/search/usagesSearch/utils.kt | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/utils.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/utils.kt index ee1e11f6f01..5a472eec0a8 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/utils.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/search/usagesSearch/utils.kt @@ -44,7 +44,14 @@ val JetDeclaration.descriptor: DeclarationDescriptor? get() = this.analyze().get(BindingContext.DECLARATION_TO_DESCRIPTOR, this) val JetDeclaration.constructor: ConstructorDescriptor? - get() = this.analyze().get(BindingContext.CONSTRUCTOR, this) + get() { + val context = this.analyze() + return when (this) { + is JetClassOrObject -> context[BindingContext.CLASS, this]?.getUnsubstitutedPrimaryConstructor() + is JetFunction -> context[BindingContext.CONSTRUCTOR, this] + else -> null + } + } val JetParameter.propertyDescriptor: PropertyDescriptor? get() = this.analyze().get(BindingContext.PRIMARY_CONSTRUCTOR_PARAMETER, this)