[FIR] Replace usages of FirExpression.typeRef with coneTypeOrNull

#KT-59855 Fixed
This commit is contained in:
Kirill Rakhman
2023-08-04 10:43:25 +02:00
committed by Space Team
parent f60d81097c
commit 8d7c5b375e
76 changed files with 538 additions and 565 deletions
@@ -54,7 +54,7 @@ class FirAssignmentPluginAssignAltererExtension(
source = variableAssignment.source?.fakeElement(KtFakeSourceElementKind.DesugaredCompoundAssignment)
explicitReceiver = buildPropertyAccessExpression {
source = leftArgument.source
typeRef = leftResolvedType
coneTypeOrNull = leftResolvedType.type
calleeReference = leftArgument
(variableAssignment.lValue as? FirQualifiedAccessExpression)?.typeArguments?.let(typeArguments::addAll)
annotations += variableAssignment.annotations
@@ -71,4 +71,4 @@ class FirAssignmentPluginAssignAltererExtension(
origin = FirFunctionCallOrigin.Regular
}
}
}
}
@@ -57,7 +57,7 @@ class MembersOfSerializerGenerator(session: FirSession) : FirDeclarationGenerati
val function = createMemberFunction(owner, Key, callableId.callableName, session.builtinTypes.unitType.type) {
valueParameter(X_NAME, argumentClassId.createConeType(session))
}.apply {
replaceBody(buildBlock {}.apply { replaceTypeRef(session.builtinTypes.unitType) })
replaceBody(buildBlock {}.apply { replaceConeTypeOrNull(session.builtinTypes.unitType.type) })
}
return listOf(function.symbol)
}
@@ -26,8 +26,11 @@ import org.jetbrains.kotlin.fir.symbols.SymbolInternals
import org.jetbrains.kotlin.fir.symbols.impl.FirPropertySymbol
import org.jetbrains.kotlin.fir.symbols.impl.FirRegularClassSymbol
import org.jetbrains.kotlin.fir.types.builder.buildUserTypeRef
import org.jetbrains.kotlin.fir.types.coneTypeOrNull
import org.jetbrains.kotlin.fir.types.impl.FirImplicitTypeRefImplWithoutSource
import org.jetbrains.kotlin.fir.types.impl.FirQualifierPartImpl
import org.jetbrains.kotlin.fir.types.impl.FirTypeArgumentListImpl
import org.jetbrains.kotlin.fir.types.toFirResolvedTypeRef
import org.jetbrains.kotlin.name.ClassId
import org.jetbrains.kotlin.name.FqName
import org.jetbrains.kotlin.name.Name
@@ -148,12 +151,12 @@ class FirScriptConfiguratorExtensionImpl(
moduleData = session.moduleData
origin = FirDeclarationOrigin.ScriptCustomization.ResultProperty
initializer = lastExpression
returnTypeRef = lastExpression.typeRef
returnTypeRef = lastExpression.coneTypeOrNull?.toFirResolvedTypeRef() ?: FirImplicitTypeRefImplWithoutSource
getter = FirDefaultPropertyGetter(
lastExpression.source,
session.moduleData,
FirDeclarationOrigin.ScriptCustomization.ResultProperty,
lastExpression.typeRef,
lastExpression.coneTypeOrNull?.toFirResolvedTypeRef() ?: FirImplicitTypeRefImplWithoutSource,
Visibilities.Public,
this.symbol,
)