[FIR] Fix all usages of declarationSiteSession
This commit is contained in:
committed by
TeamCityServer
parent
a15316de24
commit
5cfa8694d4
+9
-4
@@ -6,7 +6,7 @@
|
||||
package org.jetbrains.kotlin.fir.deserialization
|
||||
|
||||
import com.intellij.openapi.progress.ProcessCanceledException
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.FirModuleData
|
||||
import org.jetbrains.kotlin.fir.caches.*
|
||||
import org.jetbrains.kotlin.fir.resolve.providers.FirSymbolProvider
|
||||
import org.jetbrains.kotlin.fir.resolve.providers.FirSymbolProviderInternals
|
||||
@@ -39,9 +39,9 @@ class PackagePartsCacheData(
|
||||
typealias DeserializedClassPostProcessor = (FirRegularClassSymbol) -> Unit
|
||||
|
||||
abstract class AbstractFirDeserializedSymbolsProvider(
|
||||
session: FirSession,
|
||||
val moduleData: FirModuleData,
|
||||
val kotlinScopeProvider: FirKotlinScopeProvider
|
||||
) : FirSymbolProvider(session) {
|
||||
) : FirSymbolProvider(moduleData.session) {
|
||||
|
||||
// ------------------------ Caches ------------------------
|
||||
|
||||
@@ -110,7 +110,12 @@ abstract class AbstractFirDeserializedSymbolsProvider(
|
||||
val (nameResolver, classProto, annotationDeserializer, sourceElement, postProcessor) = result
|
||||
val symbol = FirRegularClassSymbol(classId)
|
||||
deserializeClassToSymbol(
|
||||
classId, classProto, symbol, nameResolver, session,
|
||||
classId,
|
||||
classProto,
|
||||
symbol,
|
||||
nameResolver,
|
||||
session,
|
||||
moduleData,
|
||||
annotationDeserializer,
|
||||
kotlinScopeProvider,
|
||||
parentContext,
|
||||
|
||||
+7
-6
@@ -49,6 +49,7 @@ fun deserializeClassToSymbol(
|
||||
symbol: FirRegularClassSymbol,
|
||||
nameResolver: NameResolver,
|
||||
session: FirSession,
|
||||
moduleData: FirModuleData,
|
||||
defaultAnnotationDeserializer: AbstractAnnotationDeserializer?,
|
||||
scopeProvider: FirScopeProvider,
|
||||
parentContext: FirDeserializationContext? = null,
|
||||
@@ -90,7 +91,7 @@ fun deserializeClassToSymbol(
|
||||
classId,
|
||||
classProto,
|
||||
nameResolver,
|
||||
session,
|
||||
moduleData,
|
||||
annotationDeserializer,
|
||||
FirConstDeserializer(session, (containerSource as? KotlinJvmBinarySourceElement)?.binaryClass),
|
||||
containerSource,
|
||||
@@ -102,7 +103,7 @@ fun deserializeClassToSymbol(
|
||||
}
|
||||
}
|
||||
buildRegularClass {
|
||||
declarationSiteSession = session
|
||||
this.moduleData = moduleData
|
||||
this.origin = origin
|
||||
name = classId.shortClassName
|
||||
this.status = status
|
||||
@@ -159,7 +160,7 @@ fun deserializeClassToSymbol(
|
||||
|
||||
val enumType = ConeClassLikeTypeImpl(symbol.toLookupTag(), emptyArray(), false)
|
||||
val property = buildEnumEntry {
|
||||
declarationSiteSession = session
|
||||
this.moduleData = moduleData
|
||||
this.origin = FirDeclarationOrigin.Library
|
||||
returnTypeRef = buildResolvedTypeRef { type = enumType }
|
||||
name = enumEntryName
|
||||
@@ -182,11 +183,11 @@ fun deserializeClassToSymbol(
|
||||
|
||||
if (classKind == ClassKind.ENUM_CLASS) {
|
||||
generateValuesFunction(
|
||||
session,
|
||||
moduleData,
|
||||
classId.packageFqName,
|
||||
classId.relativeClassName
|
||||
)
|
||||
generateValueOfFunction(session, classId.packageFqName, classId.relativeClassName)
|
||||
generateValueOfFunction(moduleData, classId.packageFqName, classId.relativeClassName)
|
||||
}
|
||||
|
||||
addCloneForArrayIfNeeded(classId, context.dispatchReceiver)
|
||||
@@ -255,7 +256,7 @@ private fun FirRegularClassBuilder.addCloneForArrayIfNeeded(classId: ClassId, di
|
||||
)
|
||||
}
|
||||
declarations += buildSimpleFunction {
|
||||
declarationSiteSession = this@addCloneForArrayIfNeeded.declarationSiteSession
|
||||
moduleData = this@addCloneForArrayIfNeeded.moduleData
|
||||
origin = FirDeclarationOrigin.Library
|
||||
resolvePhase = FirResolvePhase.ANALYZED_DEPENDENCIES
|
||||
returnTypeRef = buildResolvedTypeRef {
|
||||
|
||||
+23
-20
@@ -6,6 +6,7 @@
|
||||
package org.jetbrains.kotlin.fir.deserialization
|
||||
|
||||
import org.jetbrains.kotlin.descriptors.Modality
|
||||
import org.jetbrains.kotlin.fir.FirModuleData
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.containingClassAttr
|
||||
import org.jetbrains.kotlin.fir.declarations.*
|
||||
@@ -15,7 +16,6 @@ import org.jetbrains.kotlin.fir.expressions.FirAnnotationCall
|
||||
import org.jetbrains.kotlin.fir.expressions.FirExpression
|
||||
import org.jetbrains.kotlin.fir.expressions.builder.buildExpressionStub
|
||||
import org.jetbrains.kotlin.fir.resolve.defaultType
|
||||
import org.jetbrains.kotlin.name.StandardClassIds
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.*
|
||||
import org.jetbrains.kotlin.fir.toEffectiveVisibility
|
||||
import org.jetbrains.kotlin.fir.types.*
|
||||
@@ -28,6 +28,7 @@ import org.jetbrains.kotlin.metadata.deserialization.*
|
||||
import org.jetbrains.kotlin.name.CallableId
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.name.StandardClassIds
|
||||
import org.jetbrains.kotlin.protobuf.MessageLite
|
||||
import org.jetbrains.kotlin.serialization.deserialization.ProtoEnumFlags
|
||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource
|
||||
@@ -37,7 +38,7 @@ class FirDeserializationContext(
|
||||
val nameResolver: NameResolver,
|
||||
val typeTable: TypeTable,
|
||||
val versionRequirementTable: VersionRequirementTable,
|
||||
val session: FirSession,
|
||||
val moduleData: FirModuleData,
|
||||
val packageFqName: FqName,
|
||||
val relativeClassName: FqName?,
|
||||
val typeDeserializer: FirTypeDeserializer,
|
||||
@@ -47,6 +48,8 @@ class FirDeserializationContext(
|
||||
val outerClassSymbol: FirRegularClassSymbol?,
|
||||
outerTypeParameters: List<FirTypeParameterSymbol>
|
||||
) {
|
||||
val session: FirSession = moduleData.session
|
||||
|
||||
val allTypeParameters: List<FirTypeParameterSymbol> =
|
||||
typeDeserializer.ownTypeParameters + outerTypeParameters
|
||||
|
||||
@@ -63,10 +66,10 @@ class FirDeserializationContext(
|
||||
nameResolver,
|
||||
typeTable,
|
||||
versionRequirementTable,
|
||||
session,
|
||||
moduleData,
|
||||
packageFqName,
|
||||
relativeClassName,
|
||||
FirTypeDeserializer(session, nameResolver, typeTable, annotationDeserializer, typeParameterProtos, typeDeserializer),
|
||||
FirTypeDeserializer(moduleData, nameResolver, typeTable, annotationDeserializer, typeParameterProtos, typeDeserializer),
|
||||
annotationDeserializer,
|
||||
constDeserializer,
|
||||
containerSource,
|
||||
@@ -82,14 +85,14 @@ class FirDeserializationContext(
|
||||
fqName: FqName,
|
||||
packageProto: ProtoBuf.Package,
|
||||
nameResolver: NameResolver,
|
||||
session: FirSession,
|
||||
moduleData: FirModuleData,
|
||||
annotationDeserializer: AbstractAnnotationDeserializer,
|
||||
constDeserializer: FirConstDeserializer,
|
||||
containerSource: DeserializedContainerSource?
|
||||
): FirDeserializationContext = createRootContext(
|
||||
nameResolver,
|
||||
TypeTable(packageProto.typeTable),
|
||||
session,
|
||||
moduleData,
|
||||
VersionRequirementTable.create(packageProto.versionRequirementTable),
|
||||
annotationDeserializer,
|
||||
constDeserializer,
|
||||
@@ -104,7 +107,7 @@ class FirDeserializationContext(
|
||||
classId: ClassId,
|
||||
classProto: ProtoBuf.Class,
|
||||
nameResolver: NameResolver,
|
||||
session: FirSession,
|
||||
moduleData: FirModuleData,
|
||||
annotationDeserializer: AbstractAnnotationDeserializer,
|
||||
constDeserializer: FirConstDeserializer,
|
||||
containerSource: DeserializedContainerSource?,
|
||||
@@ -112,7 +115,7 @@ class FirDeserializationContext(
|
||||
): FirDeserializationContext = createRootContext(
|
||||
nameResolver,
|
||||
TypeTable(classProto.typeTable),
|
||||
session,
|
||||
moduleData,
|
||||
VersionRequirementTable.create(classProto.versionRequirementTable),
|
||||
annotationDeserializer,
|
||||
constDeserializer,
|
||||
@@ -126,7 +129,7 @@ class FirDeserializationContext(
|
||||
private fun createRootContext(
|
||||
nameResolver: NameResolver,
|
||||
typeTable: TypeTable,
|
||||
session: FirSession,
|
||||
moduleData: FirModuleData,
|
||||
versionRequirementTable: VersionRequirementTable,
|
||||
annotationDeserializer: AbstractAnnotationDeserializer,
|
||||
constDeserializer: FirConstDeserializer,
|
||||
@@ -139,11 +142,11 @@ class FirDeserializationContext(
|
||||
return FirDeserializationContext(
|
||||
nameResolver, typeTable,
|
||||
versionRequirementTable,
|
||||
session,
|
||||
moduleData,
|
||||
packageFqName,
|
||||
relativeClassName,
|
||||
FirTypeDeserializer(
|
||||
session,
|
||||
moduleData,
|
||||
nameResolver,
|
||||
typeTable,
|
||||
annotationDeserializer,
|
||||
@@ -175,7 +178,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
|
||||
val local = c.childContext(proto.typeParameterList)
|
||||
val classId = ClassId(c.packageFqName, name)
|
||||
return buildTypeAlias {
|
||||
declarationSiteSession = c.session
|
||||
moduleData = c.moduleData
|
||||
origin = FirDeclarationOrigin.Library
|
||||
this.name = name
|
||||
val visibility = ProtoEnumFlags.visibility(Flags.VISIBILITY.get(flags))
|
||||
@@ -237,7 +240,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
|
||||
val effectiveVisibility = visibility.toEffectiveVisibility(classSymbol)
|
||||
if (Flags.IS_NOT_DEFAULT.get(getterFlags)) {
|
||||
buildPropertyAccessor {
|
||||
declarationSiteSession = c.session
|
||||
moduleData = c.moduleData
|
||||
origin = FirDeclarationOrigin.Library
|
||||
this.returnTypeRef = returnTypeRef
|
||||
resolvePhase = FirResolvePhase.ANALYZED_DEPENDENCIES
|
||||
@@ -256,7 +259,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
|
||||
versionRequirementsTable = c.versionRequirementTable
|
||||
}
|
||||
} else {
|
||||
FirDefaultPropertyGetter(null, c.session, FirDeclarationOrigin.Library, returnTypeRef, visibility, effectiveVisibility)
|
||||
FirDefaultPropertyGetter(null, c.moduleData, FirDeclarationOrigin.Library, returnTypeRef, visibility, effectiveVisibility)
|
||||
}.apply {
|
||||
(annotations as MutableList<FirAnnotationCall>) +=
|
||||
c.annotationDeserializer.loadPropertyGetterAnnotations(
|
||||
@@ -274,7 +277,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
|
||||
val effectiveVisibility = visibility.toEffectiveVisibility(classSymbol)
|
||||
if (Flags.IS_NOT_DEFAULT.get(setterFlags)) {
|
||||
buildPropertyAccessor {
|
||||
declarationSiteSession = c.session
|
||||
moduleData = c.moduleData
|
||||
origin = FirDeclarationOrigin.Library
|
||||
this.returnTypeRef = FirImplicitUnitTypeRef(source)
|
||||
resolvePhase = FirResolvePhase.ANALYZED_DEPENDENCIES
|
||||
@@ -299,7 +302,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
|
||||
versionRequirementsTable = c.versionRequirementTable
|
||||
}
|
||||
} else {
|
||||
FirDefaultPropertySetter(null, c.session, FirDeclarationOrigin.Library, returnTypeRef, visibility, effectiveVisibility)
|
||||
FirDefaultPropertySetter(null, c.moduleData, FirDeclarationOrigin.Library, returnTypeRef, visibility, effectiveVisibility)
|
||||
}.apply {
|
||||
(annotations as MutableList<FirAnnotationCall>) +=
|
||||
c.annotationDeserializer.loadPropertySetterAnnotations(
|
||||
@@ -312,7 +315,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
|
||||
|
||||
val isVar = Flags.IS_VAR.get(flags)
|
||||
return buildProperty {
|
||||
declarationSiteSession = c.session
|
||||
moduleData = c.moduleData
|
||||
origin = FirDeclarationOrigin.Library
|
||||
this.returnTypeRef = returnTypeRef
|
||||
receiverTypeRef = proto.receiverType(c.typeTable)?.toTypeRef(local).apply {
|
||||
@@ -380,7 +383,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
|
||||
val local = c.childContext(proto.typeParameterList)
|
||||
|
||||
val simpleFunction = buildSimpleFunction {
|
||||
declarationSiteSession = c.session
|
||||
moduleData = c.moduleData
|
||||
origin = FirDeclarationOrigin.Library
|
||||
returnTypeRef = proto.returnType(local.typeTable).toTypeRef(local)
|
||||
receiverTypeRef = proto.receiverType(local.typeTable)?.toTypeRef(local).apply {
|
||||
@@ -455,7 +458,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
|
||||
} else {
|
||||
FirConstructorBuilder()
|
||||
}.apply {
|
||||
declarationSiteSession = c.session
|
||||
moduleData = c.moduleData
|
||||
origin = FirDeclarationOrigin.Library
|
||||
returnTypeRef = delegatedSelfType
|
||||
val visibility = ProtoEnumFlags.visibility(Flags.VISIBILITY.get(flags))
|
||||
@@ -508,7 +511,7 @@ class FirMemberDeserializer(private val c: FirDeserializationContext) {
|
||||
val flags = if (proto.hasFlags()) proto.flags else 0
|
||||
val name = c.nameResolver.getName(proto.name)
|
||||
buildValueParameter {
|
||||
declarationSiteSession = c.session
|
||||
moduleData = c.moduleData
|
||||
origin = FirDeclarationOrigin.Library
|
||||
returnTypeRef = proto.type(c.typeTable).toTypeRef(c)
|
||||
this.name = name
|
||||
|
||||
+5
-5
@@ -6,7 +6,7 @@
|
||||
package org.jetbrains.kotlin.fir.deserialization
|
||||
|
||||
import org.jetbrains.kotlin.builtins.functions.FunctionClassKind
|
||||
import org.jetbrains.kotlin.fir.FirSession
|
||||
import org.jetbrains.kotlin.fir.FirModuleData
|
||||
import org.jetbrains.kotlin.fir.declarations.FirDeclarationOrigin
|
||||
import org.jetbrains.kotlin.fir.declarations.FirTypeParameterRefsOwner
|
||||
import org.jetbrains.kotlin.fir.declarations.addDefaultBoundIfNecessary
|
||||
@@ -18,7 +18,6 @@ import org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.firUnsafe
|
||||
import org.jetbrains.kotlin.fir.symbols.ConeClassLikeLookupTag
|
||||
import org.jetbrains.kotlin.fir.symbols.ConeClassifierLookupTag
|
||||
import org.jetbrains.kotlin.fir.symbols.ConeTypeParameterLookupTag
|
||||
import org.jetbrains.kotlin.name.StandardClassIds
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.ConeClassLikeLookupTagImpl
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirClassLikeSymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirTypeParameterSymbol
|
||||
@@ -29,6 +28,7 @@ import org.jetbrains.kotlin.fir.types.impl.ConeTypeParameterTypeImpl
|
||||
import org.jetbrains.kotlin.metadata.ProtoBuf
|
||||
import org.jetbrains.kotlin.metadata.deserialization.*
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
import org.jetbrains.kotlin.name.StandardClassIds
|
||||
import org.jetbrains.kotlin.serialization.deserialization.ProtoEnumFlags
|
||||
import org.jetbrains.kotlin.serialization.deserialization.getClassId
|
||||
import org.jetbrains.kotlin.serialization.deserialization.getName
|
||||
@@ -36,7 +36,7 @@ import org.jetbrains.kotlin.types.Variance
|
||||
import java.util.*
|
||||
|
||||
class FirTypeDeserializer(
|
||||
val session: FirSession,
|
||||
val moduleData: FirModuleData,
|
||||
val nameResolver: NameResolver,
|
||||
val typeTable: TypeTable,
|
||||
val annotationDeserializer: AbstractAnnotationDeserializer,
|
||||
@@ -66,7 +66,7 @@ class FirTypeDeserializer(
|
||||
typeParameterNames[name.asString()] = it
|
||||
}
|
||||
builders += FirTypeParameterBuilder().apply {
|
||||
declarationSiteSession = session
|
||||
moduleData = this@FirTypeDeserializer.moduleData
|
||||
origin = FirDeclarationOrigin.Library
|
||||
this.name = name
|
||||
this.symbol = symbol
|
||||
@@ -189,7 +189,7 @@ class FirTypeDeserializer(
|
||||
attributes: ConeAttributes
|
||||
): ConeClassLikeType {
|
||||
val result =
|
||||
when (functionTypeConstructor.toSymbol(session)!!.firUnsafe<FirTypeParameterRefsOwner>().typeParameters.size - arguments.size) {
|
||||
when (functionTypeConstructor.toSymbol(moduleData.session)!!.firUnsafe<FirTypeParameterRefsOwner>().typeParameters.size - arguments.size) {
|
||||
0 -> createSuspendFunctionTypeForBasicCase(functionTypeConstructor, arguments, isNullable, attributes)
|
||||
1 -> {
|
||||
val arity = arguments.size - 1
|
||||
|
||||
+24
-20
@@ -23,7 +23,6 @@ import org.jetbrains.kotlin.fir.resolve.defaultType
|
||||
import org.jetbrains.kotlin.fir.resolve.providers.FirSymbolProvider
|
||||
import org.jetbrains.kotlin.fir.resolve.providers.FirSymbolProviderInternals
|
||||
import org.jetbrains.kotlin.fir.scopes.FirKotlinScopeProvider
|
||||
import org.jetbrains.kotlin.name.StandardClassIds
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.*
|
||||
import org.jetbrains.kotlin.fir.types.FirResolvedTypeRef
|
||||
import org.jetbrains.kotlin.fir.types.builder.buildResolvedTypeRef
|
||||
@@ -32,10 +31,7 @@ import org.jetbrains.kotlin.fir.types.impl.ConeTypeParameterTypeImpl
|
||||
import org.jetbrains.kotlin.metadata.ProtoBuf
|
||||
import org.jetbrains.kotlin.metadata.builtins.BuiltInsBinaryVersion
|
||||
import org.jetbrains.kotlin.metadata.deserialization.NameResolverImpl
|
||||
import org.jetbrains.kotlin.name.CallableId
|
||||
import org.jetbrains.kotlin.name.ClassId
|
||||
import org.jetbrains.kotlin.name.FqName
|
||||
import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.name.*
|
||||
import org.jetbrains.kotlin.serialization.deserialization.ProtoBasedClassDataFinder
|
||||
import org.jetbrains.kotlin.serialization.deserialization.builtins.BuiltInSerializerProtocol
|
||||
import org.jetbrains.kotlin.serialization.deserialization.getName
|
||||
@@ -46,7 +42,11 @@ import java.io.InputStream
|
||||
|
||||
//TODO make thread safe
|
||||
@ThreadSafeMutableState
|
||||
open class FirBuiltinSymbolProvider(session: FirSession, val kotlinScopeProvider: FirKotlinScopeProvider) : FirSymbolProvider(session) {
|
||||
open class FirBuiltinSymbolProvider(
|
||||
session: FirSession,
|
||||
val moduleData: FirModuleData,
|
||||
val kotlinScopeProvider: FirKotlinScopeProvider
|
||||
) : FirSymbolProvider(session) {
|
||||
|
||||
private data class SyntheticFunctionalInterfaceSymbolKey(val kind: FunctionClassKind, val arity: Int)
|
||||
|
||||
@@ -61,7 +61,7 @@ open class FirBuiltinSymbolProvider(session: FirSession, val kotlinScopeProvider
|
||||
return packageFqNames.map { fqName ->
|
||||
val resourcePath = BuiltInSerializerProtocol.getBuiltInsFilePath(fqName)
|
||||
val inputStream = streamProvider(resourcePath) ?: throw IllegalStateException("Resource not found in classpath: $resourcePath")
|
||||
BuiltInsPackageFragment(inputStream, fqName, session, kotlinScopeProvider)
|
||||
BuiltInsPackageFragment(inputStream, fqName)
|
||||
}
|
||||
}
|
||||
|
||||
@@ -85,7 +85,7 @@ open class FirBuiltinSymbolProvider(session: FirSession, val kotlinScopeProvider
|
||||
syntheticFunctionalInterfaceSymbols.getOrPut(SyntheticFunctionalInterfaceSymbolKey(kind, arity)) {
|
||||
FirRegularClassSymbol(this).apply symbol@{
|
||||
buildRegularClass klass@{
|
||||
declarationSiteSession = session
|
||||
moduleData = this@FirBuiltinSymbolProvider.moduleData
|
||||
origin = FirDeclarationOrigin.BuiltIns
|
||||
name = relativeClassName.shortName()
|
||||
status = FirResolvedDeclarationStatusImpl(
|
||||
@@ -107,7 +107,7 @@ open class FirBuiltinSymbolProvider(session: FirSession, val kotlinScopeProvider
|
||||
typeParameters.addAll(
|
||||
(1..arity).map {
|
||||
buildTypeParameter {
|
||||
declarationSiteSession = session
|
||||
moduleData = this@FirBuiltinSymbolProvider.moduleData
|
||||
resolvePhase = FirResolvePhase.ANALYZED_DEPENDENCIES
|
||||
origin = FirDeclarationOrigin.BuiltIns
|
||||
name = Name.identifier("P$it")
|
||||
@@ -120,7 +120,7 @@ open class FirBuiltinSymbolProvider(session: FirSession, val kotlinScopeProvider
|
||||
)
|
||||
typeParameters.add(
|
||||
buildTypeParameter {
|
||||
declarationSiteSession = session
|
||||
moduleData = this@FirBuiltinSymbolProvider.moduleData
|
||||
resolvePhase = FirResolvePhase.ANALYZED_DEPENDENCIES
|
||||
origin = FirDeclarationOrigin.BuiltIns
|
||||
name = Name.identifier("R")
|
||||
@@ -196,7 +196,7 @@ open class FirBuiltinSymbolProvider(session: FirSession, val kotlinScopeProvider
|
||||
}
|
||||
addDeclaration(
|
||||
buildSimpleFunction {
|
||||
declarationSiteSession = session
|
||||
moduleData = this@FirBuiltinSymbolProvider.moduleData
|
||||
resolvePhase = FirResolvePhase.ANALYZED_DEPENDENCIES
|
||||
origin = FirDeclarationOrigin.BuiltIns
|
||||
returnTypeRef = typeArguments.last()
|
||||
@@ -209,7 +209,7 @@ open class FirBuiltinSymbolProvider(session: FirSession, val kotlinScopeProvider
|
||||
valueParameters += typeArguments.dropLast(1).mapIndexed { index, typeArgument ->
|
||||
val parameterName = Name.identifier("p${index + 1}")
|
||||
buildValueParameter {
|
||||
declarationSiteSession = session
|
||||
moduleData = this@FirBuiltinSymbolProvider.moduleData
|
||||
origin = FirDeclarationOrigin.BuiltIns
|
||||
resolvePhase = FirResolvePhase.ANALYZED_DEPENDENCIES
|
||||
returnTypeRef = typeArgument
|
||||
@@ -254,10 +254,7 @@ open class FirBuiltinSymbolProvider(session: FirSession, val kotlinScopeProvider
|
||||
override fun getTopLevelPropertySymbolsTo(destination: MutableList<FirPropertySymbol>, packageFqName: FqName, name: Name) {
|
||||
}
|
||||
|
||||
private class BuiltInsPackageFragment(
|
||||
stream: InputStream, val fqName: FqName, val session: FirSession,
|
||||
val kotlinScopeProvider: FirKotlinScopeProvider,
|
||||
) {
|
||||
private inner class BuiltInsPackageFragment(stream: InputStream, val fqName: FqName) {
|
||||
lateinit var version: BuiltInsBinaryVersion
|
||||
|
||||
val packageProto: ProtoBuf.PackageFragment = run {
|
||||
@@ -282,7 +279,7 @@ open class FirBuiltinSymbolProvider(session: FirSession, val kotlinScopeProvider
|
||||
|
||||
private val memberDeserializer by lazy {
|
||||
FirDeserializationContext.createForPackage(
|
||||
fqName, packageProto.`package`, nameResolver, session,
|
||||
fqName, packageProto.`package`, nameResolver, moduleData,
|
||||
FirBuiltinAnnotationDeserializer(session),
|
||||
FirConstDeserializer(session),
|
||||
containerSource = null
|
||||
@@ -305,9 +302,16 @@ open class FirBuiltinSymbolProvider(session: FirSession, val kotlinScopeProvider
|
||||
val classProto = classData.classProto
|
||||
|
||||
deserializeClassToSymbol(
|
||||
classId, classProto, symbol, nameResolver, session,
|
||||
null, kotlinScopeProvider, parentContext,
|
||||
null,
|
||||
classId,
|
||||
classProto,
|
||||
symbol,
|
||||
nameResolver,
|
||||
session,
|
||||
moduleData,
|
||||
defaultAnnotationDeserializer = null,
|
||||
kotlinScopeProvider,
|
||||
parentContext,
|
||||
containerSource = null,
|
||||
origin = FirDeclarationOrigin.BuiltIns,
|
||||
this::findAndDeserializeClass,
|
||||
)
|
||||
|
||||
Reference in New Issue
Block a user