K2: rename importedFromObject -> importedFromObjectOrStatic
This commit is contained in:
committed by
Space Team
parent
2b2cc07c89
commit
cc1a094b6c
+3
-4
@@ -18,7 +18,7 @@ import org.jetbrains.kotlin.analysis.low.level.api.fir.util.errorWithFirSpecific
|
||||
import org.jetbrains.kotlin.analysis.low.level.api.fir.util.withFirEntry
|
||||
import org.jetbrains.kotlin.fir.declarations.synthetic.FirSyntheticProperty
|
||||
import org.jetbrains.kotlin.fir.declarations.synthetic.FirSyntheticPropertyAccessor
|
||||
import org.jetbrains.kotlin.fir.scopes.impl.importedFromObjectData
|
||||
import org.jetbrains.kotlin.fir.scopes.impl.importedFromObjectOrStaticData
|
||||
import org.jetbrains.kotlin.fir.scopes.impl.originalForWrappedIntegerOperator
|
||||
import org.jetbrains.kotlin.fir.symbols.FirBasedSymbol
|
||||
import org.jetbrains.kotlin.analysis.utils.errors.buildErrorWithAttachment
|
||||
@@ -26,7 +26,6 @@ import org.jetbrains.kotlin.fir.declarations.*
|
||||
import org.jetbrains.kotlin.fir.declarations.utils.isLocal
|
||||
import org.jetbrains.kotlin.fir.resolve.getContainingDeclaration
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirClassLikeSymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.FirClassifierSymbol
|
||||
|
||||
internal interface KtFirSymbol<out S : FirBasedSymbol<*>> : KtSymbol, KtLifetimeOwner {
|
||||
val firSymbol: S
|
||||
@@ -73,8 +72,8 @@ internal tailrec fun FirDeclaration.ktSymbolOrigin(): KtSymbolOrigin = when (ori
|
||||
}
|
||||
}
|
||||
|
||||
FirDeclarationOrigin.ImportedFromObject -> {
|
||||
val importedFromObjectData = (this as FirCallableDeclaration).importedFromObjectData
|
||||
FirDeclarationOrigin.ImportedFromObjectOrStatic -> {
|
||||
val importedFromObjectData = (this as FirCallableDeclaration).importedFromObjectOrStaticData
|
||||
?: buildErrorWithAttachment("Declaration has ImportedFromObject origin, but no importedFromObjectData present") {
|
||||
withFirEntry("firToGetOrigin", this@ktSymbolOrigin)
|
||||
}
|
||||
|
||||
+1
-1
@@ -89,7 +89,7 @@ internal class LLFirModuleLazyDeclarationResolver(val moduleComponents: LLFirMod
|
||||
|
||||
private fun FirDeclaration.isValidForResolve(): Boolean = when (origin) {
|
||||
is FirDeclarationOrigin.Source,
|
||||
is FirDeclarationOrigin.ImportedFromObject,
|
||||
is FirDeclarationOrigin.ImportedFromObjectOrStatic,
|
||||
is FirDeclarationOrigin.Delegated,
|
||||
is FirDeclarationOrigin.Synthetic,
|
||||
is FirDeclarationOrigin.SubstitutionOverride,
|
||||
|
||||
+8
-8
@@ -28,10 +28,10 @@ class FirObjectImportedCallableScope(
|
||||
objectUseSiteScope.processFunctionsByName(name) wrapper@{ symbol ->
|
||||
val function = symbol.fir
|
||||
val syntheticFunction = buildSimpleFunctionCopy(function) {
|
||||
origin = FirDeclarationOrigin.ImportedFromObject
|
||||
origin = FirDeclarationOrigin.ImportedFromObjectOrStatic
|
||||
this.symbol = FirNamedFunctionSymbol(CallableId(importedClassId, name))
|
||||
}.apply {
|
||||
importedFromObjectData = ImportedFromObjectData(importedClassId, function)
|
||||
importedFromObjectOrStaticData = ImportedFromObjectOrStaticData(importedClassId, function)
|
||||
}
|
||||
processor(syntheticFunction.symbol)
|
||||
}
|
||||
@@ -45,11 +45,11 @@ class FirObjectImportedCallableScope(
|
||||
}
|
||||
val property = symbol.fir
|
||||
val syntheticProperty = buildPropertyCopy(property) {
|
||||
origin = FirDeclarationOrigin.ImportedFromObject
|
||||
origin = FirDeclarationOrigin.ImportedFromObjectOrStatic
|
||||
this.symbol = FirPropertySymbol(CallableId(importedClassId, name))
|
||||
this.delegateFieldSymbol = null
|
||||
}.apply {
|
||||
importedFromObjectData = ImportedFromObjectData(importedClassId, property)
|
||||
importedFromObjectOrStaticData = ImportedFromObjectOrStaticData(importedClassId, property)
|
||||
}
|
||||
processor(syntheticProperty.symbol)
|
||||
}
|
||||
@@ -60,12 +60,12 @@ class FirObjectImportedCallableScope(
|
||||
override fun getClassifierNames(): Set<Name> = emptySet()
|
||||
}
|
||||
|
||||
private object ImportedFromObjectClassIdKey : FirDeclarationDataKey()
|
||||
private object ImportedFromObjectOrStaticClassIdKey : FirDeclarationDataKey()
|
||||
|
||||
class ImportedFromObjectData<D : FirCallableDeclaration>(
|
||||
class ImportedFromObjectOrStaticData<D : FirCallableDeclaration>(
|
||||
val objectClassId: ClassId,
|
||||
val original: D,
|
||||
)
|
||||
|
||||
var <D : FirCallableDeclaration>
|
||||
D.importedFromObjectData: ImportedFromObjectData<D>? by FirDeclarationDataRegistry.data(ImportedFromObjectClassIdKey)
|
||||
var <D : FirCallableDeclaration> D.importedFromObjectOrStaticData: ImportedFromObjectOrStaticData<D>?
|
||||
by FirDeclarationDataRegistry.data(ImportedFromObjectOrStaticClassIdKey)
|
||||
|
||||
@@ -37,7 +37,7 @@ import org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.resultType
|
||||
import org.jetbrains.kotlin.fir.scopes.FirTypeScope
|
||||
import org.jetbrains.kotlin.fir.scopes.ProcessorAction
|
||||
import org.jetbrains.kotlin.fir.scopes.impl.delegatedWrapperData
|
||||
import org.jetbrains.kotlin.fir.scopes.impl.importedFromObjectData
|
||||
import org.jetbrains.kotlin.fir.scopes.impl.importedFromObjectOrStaticData
|
||||
import org.jetbrains.kotlin.fir.scopes.processOverriddenFunctions
|
||||
import org.jetbrains.kotlin.fir.symbols.FirBasedSymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.*
|
||||
@@ -523,7 +523,7 @@ fun FirFunction.getAsForbiddenNamedArgumentsTarget(
|
||||
return when (origin) {
|
||||
FirDeclarationOrigin.Source, FirDeclarationOrigin.Precompiled, FirDeclarationOrigin.Library -> null
|
||||
FirDeclarationOrigin.Delegated -> delegatedWrapperData?.wrapped?.getAsForbiddenNamedArgumentsTarget(session)
|
||||
FirDeclarationOrigin.ImportedFromObject -> importedFromObjectData?.original?.getAsForbiddenNamedArgumentsTarget(session)
|
||||
FirDeclarationOrigin.ImportedFromObjectOrStatic -> importedFromObjectOrStaticData?.original?.getAsForbiddenNamedArgumentsTarget(session)
|
||||
is FirDeclarationOrigin.Java, FirDeclarationOrigin.Enhancement -> ForbiddenNamedArgumentsTarget.NON_KOTLIN_FUNCTION
|
||||
FirDeclarationOrigin.SamConstructor -> null
|
||||
FirDeclarationOrigin.IntersectionOverride, FirDeclarationOrigin.SubstitutionOverride -> {
|
||||
|
||||
+3
-3
@@ -18,7 +18,7 @@ import org.jetbrains.kotlin.fir.resolve.providers.symbolProvider
|
||||
import org.jetbrains.kotlin.fir.resolve.transformers.body.resolve.resultType
|
||||
import org.jetbrains.kotlin.fir.scopes.*
|
||||
import org.jetbrains.kotlin.fir.scopes.impl.FirDefaultStarImportingScope
|
||||
import org.jetbrains.kotlin.fir.scopes.impl.importedFromObjectData
|
||||
import org.jetbrains.kotlin.fir.scopes.impl.importedFromObjectOrStaticData
|
||||
import org.jetbrains.kotlin.fir.symbols.FirBasedSymbol
|
||||
import org.jetbrains.kotlin.fir.symbols.impl.*
|
||||
import org.jetbrains.kotlin.fir.types.*
|
||||
@@ -314,7 +314,7 @@ class ScopeTowerLevel(
|
||||
fun areThereExtensionReceiverOptions(): Boolean = givenExtensionReceiverOptions.isNotEmpty()
|
||||
|
||||
private fun dispatchReceiverValue(candidate: FirCallableSymbol<*>): ReceiverValue? {
|
||||
candidate.fir.importedFromObjectData?.let { data ->
|
||||
candidate.fir.importedFromObjectOrStaticData?.let { data ->
|
||||
val objectClassId = data.objectClassId
|
||||
val symbol = session.symbolProvider.getClassLikeSymbolByClassId(objectClassId)
|
||||
if (symbol is FirRegularClassSymbol) {
|
||||
@@ -384,7 +384,7 @@ class ScopeTowerLevel(
|
||||
if (dispatchReceiverValue == null && shouldSkipCandidateWithInconsistentExtensionReceiver(candidate)) {
|
||||
return
|
||||
}
|
||||
val unwrappedCandidate = candidate.fir.importedFromObjectData?.original?.symbol ?: candidate
|
||||
val unwrappedCandidate = candidate.fir.importedFromObjectOrStaticData?.original?.symbol ?: candidate
|
||||
@Suppress("UNCHECKED_CAST")
|
||||
processor.consumeCandidate(
|
||||
unwrappedCandidate as T, dispatchReceiverValue,
|
||||
|
||||
@@ -26,7 +26,7 @@ sealed class FirDeclarationOrigin(
|
||||
object DynamicScope : FirDeclarationOrigin()
|
||||
object SamConstructor : FirDeclarationOrigin()
|
||||
object Enhancement : FirDeclarationOrigin()
|
||||
object ImportedFromObject : FirDeclarationOrigin()
|
||||
object ImportedFromObjectOrStatic : FirDeclarationOrigin()
|
||||
object SubstitutionOverride : FirDeclarationOrigin(fromSupertypes = true)
|
||||
object IntersectionOverride : FirDeclarationOrigin(fromSupertypes = true)
|
||||
object Delegated : FirDeclarationOrigin()
|
||||
|
||||
Reference in New Issue
Block a user