FIR: Introduce FirDeclarationOrigin.BuiltIns
This commit is contained in:
+3
-2
@@ -52,6 +52,7 @@ fun deserializeClassToSymbol(
|
||||
scopeProvider: FirScopeProvider,
|
||||
parentContext: FirDeserializationContext? = null,
|
||||
containerSource: DeserializedContainerSource? = null,
|
||||
origin: FirDeclarationOrigin = FirDeclarationOrigin.Library,
|
||||
deserializeNestedClass: (ClassId, FirDeserializationContext) -> FirRegularClassSymbol?
|
||||
) {
|
||||
val flags = classProto.flags
|
||||
@@ -94,7 +95,7 @@ fun deserializeClassToSymbol(
|
||||
}
|
||||
buildRegularClass {
|
||||
this.session = session
|
||||
origin = FirDeclarationOrigin.Library
|
||||
this.origin = origin
|
||||
name = classId.shortClassName
|
||||
this.status = status
|
||||
classKind = ProtoEnumFlags.classKind(kind)
|
||||
@@ -151,7 +152,7 @@ fun deserializeClassToSymbol(
|
||||
val enumType = ConeClassLikeTypeImpl(symbol.toLookupTag(), emptyArray(), false)
|
||||
val property = buildEnumEntry {
|
||||
this.session = session
|
||||
origin = FirDeclarationOrigin.Library
|
||||
this.origin = FirDeclarationOrigin.Library
|
||||
returnTypeRef = buildResolvedTypeRef { type = enumType }
|
||||
name = enumEntryName
|
||||
this.symbol = FirVariableSymbol(CallableId(classId, enumEntryName))
|
||||
|
||||
+1
@@ -303,6 +303,7 @@ class FirBuiltinSymbolProvider(session: FirSession, val kotlinScopeProvider: Kot
|
||||
classId, classProto, symbol, nameResolver, session,
|
||||
null, kotlinScopeProvider, parentContext,
|
||||
null,
|
||||
origin = FirDeclarationOrigin.BuiltIns,
|
||||
this::findAndDeserializeClass,
|
||||
)
|
||||
}
|
||||
|
||||
+2
-2
@@ -200,7 +200,7 @@ class KotlinDeserializedJvmSymbolsProvider(
|
||||
JvmBinaryAnnotationDeserializer(session, kotlinClass.kotlinJvmBinaryClass, kotlinClass.byteContent),
|
||||
kotlinScopeProvider,
|
||||
parentContext, KotlinJvmBinarySourceElement(kotlinClass.kotlinJvmBinaryClass),
|
||||
this::getClass
|
||||
deserializeNestedClass = this::getClass,
|
||||
)
|
||||
|
||||
return symbol to kotlinClass
|
||||
@@ -287,4 +287,4 @@ private class KnownNameInPackageCache(session: FirSession, private val javaClass
|
||||
val knownNames = knownClassNamesInPackage.getValue(classId.packageFqName) ?: return false
|
||||
return classId.relativeClassName.topLevelName() !in knownNames
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -8,6 +8,7 @@ package org.jetbrains.kotlin.fir.declarations
|
||||
sealed class FirDeclarationOrigin(val fromSupertypes: Boolean = false) {
|
||||
object Source : FirDeclarationOrigin()
|
||||
object Library : FirDeclarationOrigin()
|
||||
object BuiltIns : FirDeclarationOrigin()
|
||||
object Java : FirDeclarationOrigin()
|
||||
object Synthetic : FirDeclarationOrigin()
|
||||
object SamConstructor : FirDeclarationOrigin()
|
||||
|
||||
+1
-1
@@ -32,7 +32,7 @@ private tailrec fun FirDeclaration.ktSymbolOrigin(): KtSymbolOrigin = when (orig
|
||||
KtSymbolOrigin.SOURCE_MEMBER_GENERATED
|
||||
} else KtSymbolOrigin.SOURCE
|
||||
}
|
||||
FirDeclarationOrigin.Library -> KtSymbolOrigin.LIBRARY
|
||||
FirDeclarationOrigin.Library, FirDeclarationOrigin.BuiltIns -> KtSymbolOrigin.LIBRARY
|
||||
FirDeclarationOrigin.Java -> KtSymbolOrigin.JAVA
|
||||
FirDeclarationOrigin.SamConstructor -> KtSymbolOrigin.SAM_CONSTRUCTOR
|
||||
FirDeclarationOrigin.Enhancement -> KtSymbolOrigin.JAVA
|
||||
|
||||
Reference in New Issue
Block a user