From 43561a935c126cfed208a11b250e19a008cdcc26 Mon Sep 17 00:00:00 2001 From: Dmitrii Gridin Date: Tue, 15 Nov 2022 21:02:15 +0100 Subject: [PATCH] [SLC] drop KtAnalysisSession from SymbolLightNoArgConstructor ^KT-54051 --- .../symbol/classes/symbolLightClassUtils.kt | 3 --- .../methods/SymbolLightNoArgConstructor.kt | 22 +++++++------------ 2 files changed, 8 insertions(+), 17 deletions(-) diff --git a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/symbolLightClassUtils.kt b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/symbolLightClassUtils.kt index 090707afe14..0328cc6ea18 100644 --- a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/symbolLightClassUtils.kt +++ b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/classes/symbolLightClassUtils.kt @@ -126,7 +126,6 @@ private fun SymbolLightClassBase.shouldGenerateNoArgOverload( !primaryConstructor.hasJvmOverloadsAnnotation() } -context(KtAnalysisSession) private fun SymbolLightClassForClassOrObject.defaultConstructor(): KtLightMethod { val classOrObject = kotlinOrigin val visibility = when { @@ -139,7 +138,6 @@ private fun SymbolLightClassForClassOrObject.defaultConstructor(): KtLightMethod return noArgConstructor(visibility, METHOD_INDEX_FOR_DEFAULT_CTOR) } -context(KtAnalysisSession) private fun SymbolLightClassForClassOrObject.noArgConstructor( visibility: String, methodIndex: Int, @@ -147,7 +145,6 @@ private fun SymbolLightClassForClassOrObject.noArgConstructor( LightMemberOriginForDeclaration( originalElement = kotlinOrigin, originKind = JvmDeclarationOriginKind.OTHER, - auxiliaryOriginalElement = kotlinOrigin as? KtDeclaration ), this, visibility, diff --git a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/methods/SymbolLightNoArgConstructor.kt b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/methods/SymbolLightNoArgConstructor.kt index 625ed8b9ccb..d6e2de8eaa0 100644 --- a/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/methods/SymbolLightNoArgConstructor.kt +++ b/analysis/symbol-light-classes/src/org/jetbrains/kotlin/light/classes/symbol/methods/SymbolLightNoArgConstructor.kt @@ -6,24 +6,21 @@ package org.jetbrains.kotlin.light.classes.symbol.methods import com.intellij.psi.* -import org.jetbrains.kotlin.analysis.api.KtAnalysisSession import org.jetbrains.kotlin.asJava.builder.LightMemberOrigin import org.jetbrains.kotlin.asJava.classes.lazyPub import org.jetbrains.kotlin.light.classes.symbol.SymbolLightIdentifier import org.jetbrains.kotlin.light.classes.symbol.classes.SymbolLightClassForClassOrObject +import org.jetbrains.kotlin.light.classes.symbol.classes.analyzeForLightClasses import org.jetbrains.kotlin.light.classes.symbol.modifierLists.SymbolLightMemberModifierList import org.jetbrains.kotlin.light.classes.symbol.parameters.SymbolLightParameterList -context(KtAnalysisSession) internal class SymbolLightNoArgConstructor( - lightMemberOrigin: LightMemberOrigin?, + lightMemberOrigin: LightMemberOrigin, containingClass: SymbolLightClassForClassOrObject, visibility: String, methodIndex: Int, ) : SymbolLightMethodBase(lightMemberOrigin, containingClass, methodIndex) { - private val _name: String? = containingClass.name - - override fun getName(): String = _name ?: "" + override fun getName(): String = containingClass.name ?: "" override fun isConstructor(): Boolean = true @@ -39,9 +36,7 @@ internal class SymbolLightNoArgConstructor( override fun isDeprecated(): Boolean = false - private val _modifiers: Set by lazyPub { - setOf(visibility) - } + private val _modifiers: Set = setOf(visibility) private val _modifierList: PsiModifierList by lazyPub { SymbolLightMemberModifierList(this, _modifiers, emptyList()) @@ -50,7 +45,9 @@ internal class SymbolLightNoArgConstructor( override fun getModifierList(): PsiModifierList = _modifierList private val _parameterList: PsiParameterList by lazyPub { - SymbolLightParameterList(this, callableSymbol = null) {} + analyzeForLightClasses(containingClass.ktModule) { + SymbolLightParameterList(this@SymbolLightNoArgConstructor, callableSymbol = null) {} + } } override fun getParameterList(): PsiParameterList = _parameterList @@ -58,10 +55,7 @@ internal class SymbolLightNoArgConstructor( override fun getReturnType(): PsiType? = null override fun equals(other: Any?): Boolean = - this === other || - (other is SymbolLightNoArgConstructor && - kotlinOrigin == other.kotlinOrigin && - containingClass == other.containingClass) + this === other || other is SymbolLightNoArgConstructor && containingClass == other.containingClass override fun hashCode(): Int = containingClass.hashCode()