Replace ad-hoc .newRef() with .toFirResolvedTypeRef()
This commit is contained in:
+4
-5
@@ -25,6 +25,7 @@ import org.jetbrains.kotlin.fir.types.ConeKotlinType
|
||||
import org.jetbrains.kotlin.fir.types.FirResolvedTypeRef
|
||||
import org.jetbrains.kotlin.fir.types.builder.buildResolvedTypeRef
|
||||
import org.jetbrains.kotlin.fir.types.constructClassLikeType
|
||||
import org.jetbrains.kotlin.fir.types.toFirResolvedTypeRef
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.types.Variance
|
||||
import org.jetbrains.kotlinx.serialization.compiler.resolve.SerialEntityNames
|
||||
@@ -38,7 +39,9 @@ fun FirDeclarationGenerationExtension.buildPrimaryConstructor(owner: FirClassSym
|
||||
return buildPrimaryConstructor {
|
||||
moduleData = session.moduleData
|
||||
origin = key.origin
|
||||
returnTypeRef = owner.defaultType().newRef()
|
||||
returnTypeRef = run {
|
||||
owner.defaultType().toFirResolvedTypeRef()
|
||||
}
|
||||
this.status = status
|
||||
symbol = FirConstructorSymbol(classId)
|
||||
if (isInner && classId.isNestedClass) {
|
||||
@@ -52,10 +55,6 @@ fun FirDeclarationGenerationExtension.buildPrimaryConstructor(owner: FirClassSym
|
||||
}
|
||||
}
|
||||
|
||||
fun ConeKotlinType.newRef(): FirResolvedTypeRef = buildResolvedTypeRef {
|
||||
type = this@newRef
|
||||
}
|
||||
|
||||
fun newSimpleTypeParameter(firSession: FirSession, containingDeclarationSymbol: FirBasedSymbol<*>, name: Name) = buildTypeParameter {
|
||||
moduleData = firSession.moduleData
|
||||
origin = SerializationPluginKey.origin
|
||||
|
||||
+4
-7
@@ -30,11 +30,8 @@ import org.jetbrains.kotlin.fir.scopes.impl.toConeType
|
||||
import org.jetbrains.kotlin.fir.symbols.SymbolInternals
|
||||
import org.jetbrains.kotlin.fir.symbols.constructStarProjectedType
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.*
|
||||
import org.jetbrains.kotlin.fir.types.ConeTypeProjection
|
||||
import org.jetbrains.kotlin.fir.types.*
|
||||
import org.jetbrains.kotlin.fir.types.builder.buildResolvedTypeRef
|
||||
import org.jetbrains.kotlin.fir.types.classId
|
||||
import org.jetbrains.kotlin.fir.types.constructClassLikeType
|
||||
import org.jetbrains.kotlin.fir.types.toTypeProjection
|
||||
import org.jetbrains.kotlin.name.CallableId
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
@@ -195,7 +192,7 @@ class SerializationFirResolveExtension(session: FirSession) : FirDeclarationGene
|
||||
valueParameters.addAll(List(serializableClassSymbol.typeParameterSymbols.size) { i ->
|
||||
newSimpleValueParameter(
|
||||
session,
|
||||
kSerializerClassId.constructClassLikeType(arrayOf(parametersAsArguments[i]), false).newRef(),
|
||||
kSerializerClassId.constructClassLikeType(arrayOf(parametersAsArguments[i]), false).toFirResolvedTypeRef(),
|
||||
Name.identifier("${SerialEntityNames.typeArgPrefix}$i")
|
||||
)
|
||||
})
|
||||
@@ -267,7 +264,7 @@ class SerializationFirResolveExtension(session: FirSession) : FirDeclarationGene
|
||||
valueParameters.addAll(owner.typeParameterSymbols.mapIndexed { i, typeParam ->
|
||||
newSimpleValueParameter(
|
||||
session,
|
||||
kSerializerClassId.constructClassLikeType(arrayOf(typeParam.toConeType()), false).newRef(),
|
||||
kSerializerClassId.constructClassLikeType(arrayOf(typeParam.toConeType()), false).toFirResolvedTypeRef(),
|
||||
Name.identifier("${SerialEntityNames.typeArgPrefix}$i")
|
||||
)
|
||||
})
|
||||
@@ -311,7 +308,7 @@ class SerializationFirResolveExtension(session: FirSession) : FirDeclarationGene
|
||||
isNullable = false
|
||||
)
|
||||
), isNullable = false
|
||||
).newRef()
|
||||
).toFirResolvedTypeRef()
|
||||
}
|
||||
return serializerFirClass.symbol
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user