[FIR] Make FirTypeParameter.containingDeclarationSymbol not null

Also fix initializing this property in all places
This commit is contained in:
Dmitriy Novozhilov
2022-02-22 12:52:41 +03:00
committed by teamcity
parent 35a2a6bcec
commit 18fc2802e5
10 changed files with 24 additions and 17 deletions
@@ -29,7 +29,7 @@ abstract class FirTypeParameter : FirTypeParameterRef, FirDeclaration() {
abstract override val attributes: FirDeclarationAttributes
abstract val name: Name
abstract override val symbol: FirTypeParameterSymbol
abstract val containingDeclarationSymbol: FirBasedSymbol<*>?
abstract val containingDeclarationSymbol: FirBasedSymbol<*>
abstract val variance: Variance
abstract val isReified: Boolean
abstract val bounds: List<FirTypeRef>
@@ -37,7 +37,7 @@ class FirTypeParameterBuilder : FirAnnotationContainerBuilder {
var attributes: FirDeclarationAttributes = FirDeclarationAttributes()
lateinit var name: Name
lateinit var symbol: FirTypeParameterSymbol
var containingDeclarationSymbol: FirBasedSymbol<*>? = null
lateinit var containingDeclarationSymbol: FirBasedSymbol<*>
lateinit var variance: Variance
var isReified: Boolean by kotlin.properties.Delegates.notNull<Boolean>()
val bounds: MutableList<FirTypeRef> = mutableListOf()
@@ -33,7 +33,7 @@ internal class FirTypeParameterImpl(
override val attributes: FirDeclarationAttributes,
override val name: Name,
override val symbol: FirTypeParameterSymbol,
override val containingDeclarationSymbol: FirBasedSymbol<*>?,
override val containingDeclarationSymbol: FirBasedSymbol<*>,
override val variance: Variance,
override val isReified: Boolean,
override val bounds: MutableList<FirTypeRef>,
@@ -37,7 +37,7 @@ class FirTypeParameterSymbol : FirClassifierSymbol<FirTypeParameter>() {
val isReified: Boolean
get() = fir.isReified
val containingDeclarationSymbol: FirBasedSymbol<*>?
val containingDeclarationSymbol: FirBasedSymbol<*>
get() = fir.containingDeclarationSymbol
}
@@ -294,7 +294,7 @@ object NodeConfigurator : AbstractFieldConfigurator<FirTreeBuilder>(FirTreeBuild
typeParameter.configure {
+name
+symbol("FirTypeParameterSymbol")
+field("containingDeclarationSymbol", firBasedSymbolType, "*", nullable = true).apply {
+field("containingDeclarationSymbol", firBasedSymbolType, "*").apply {
withBindThis = false
}
+field(varianceType)