[FIR] Rename FirDeclaration.session to declarationSiteSession
This commit is contained in:
committed by
TeamCityServer
parent
46f5c2073d
commit
c3b1be1a39
+2
-2
@@ -51,13 +51,13 @@ object FirCallsEffectAnalyzer : FirControlFlowChecker() {
|
||||
val functionalTypeEffects = mutableMapOf<AbstractFirBasedSymbol<*>, ConeCallsEffectDeclaration>()
|
||||
|
||||
function.valueParameters.forEachIndexed { index, parameter ->
|
||||
if (parameter.returnTypeRef.isFunctionalTypeRef(function.session)) {
|
||||
if (parameter.returnTypeRef.isFunctionalTypeRef(function.declarationSiteSession)) {
|
||||
val effectDeclaration = function.contractDescription.getParameterCallsEffectDeclaration(index)
|
||||
if (effectDeclaration != null) functionalTypeEffects[parameter.symbol] = effectDeclaration
|
||||
}
|
||||
}
|
||||
|
||||
if (function.receiverTypeRef.isFunctionalTypeRef(function.session)) {
|
||||
if (function.receiverTypeRef.isFunctionalTypeRef(function.declarationSiteSession)) {
|
||||
val effectDeclaration = function.contractDescription.getParameterCallsEffectDeclaration(-1)
|
||||
if (effectDeclaration != null) functionalTypeEffects[function.symbol] = effectDeclaration
|
||||
}
|
||||
|
||||
+5
-5
@@ -50,7 +50,7 @@ object FirReturnsImpliesAnalyzer : FirControlFlowChecker() {
|
||||
|
||||
if (effects.isNullOrEmpty()) return
|
||||
|
||||
val logicSystem = object : PersistentLogicSystem(function.session.typeContext) {
|
||||
val logicSystem = object : PersistentLogicSystem(function.declarationSiteSession.typeContext) {
|
||||
override fun processUpdatedReceiverVariable(flow: PersistentFlow, variable: RealVariable) =
|
||||
throw IllegalStateException("Receiver variable update is not possible for this logic system")
|
||||
|
||||
@@ -84,8 +84,8 @@ object FirReturnsImpliesAnalyzer : FirControlFlowChecker() {
|
||||
context: CheckerContext
|
||||
): Boolean {
|
||||
val effect = effectDeclaration.effect as ConeReturnsEffectDeclaration
|
||||
val builtinTypes = function.session.builtinTypes
|
||||
val typeContext = function.session.typeContext
|
||||
val builtinTypes = function.declarationSiteSession.builtinTypes
|
||||
val typeContext = function.declarationSiteSession.typeContext
|
||||
val flow = dataFlowInfo.flowOnNodes.getValue(node) as PersistentFlow
|
||||
|
||||
val isReturn = node is JumpNode && node.fir is FirReturnExpression
|
||||
@@ -104,7 +104,7 @@ object FirReturnsImpliesAnalyzer : FirControlFlowChecker() {
|
||||
|
||||
if (effect.value != ConeConstantReference.WILDCARD) {
|
||||
val operation = effect.value.toOperation()
|
||||
if (expressionType != null && expressionType.isInapplicableWith(operation, function.session)) return false
|
||||
if (expressionType != null && expressionType.isInapplicableWith(operation, function.declarationSiteSession)) return false
|
||||
|
||||
if (resultExpression is FirConstExpression<*>) {
|
||||
if (!resultExpression.isApplicableWith(operation)) return false
|
||||
@@ -179,7 +179,7 @@ object FirReturnsImpliesAnalyzer : FirControlFlowChecker() {
|
||||
is ConeIsNullPredicate -> {
|
||||
val fir = function.getParameterSymbol(arg.parameterIndex, context).fir
|
||||
val realVar = variableStorage.getOrCreateRealVariable(flow, fir.symbol, fir)
|
||||
realVar?.to(simpleTypeStatement(realVar, isNegated, function.session.builtinTypes.anyType.type))?.let { mutableMapOf(it) }
|
||||
realVar?.to(simpleTypeStatement(realVar, isNegated, function.declarationSiteSession.builtinTypes.anyType.type))?.let { mutableMapOf(it) }
|
||||
}
|
||||
is ConeLogicalNot -> arg.buildTypeStatements(function, logicSystem, variableStorage, flow, context)
|
||||
?.mapValuesTo(mutableMapOf()) { (_, value) -> value.invert() }
|
||||
|
||||
@@ -62,8 +62,8 @@ fun FirClass<*>.isSuperclassOf(other: FirClass<*>): Boolean {
|
||||
*/
|
||||
fun FirClass<*>.isSuperclassOf(other: FirClass<*>, exclude: MutableSet<FirClass<*>>): Boolean {
|
||||
for (it in other.superTypeRefs) {
|
||||
val that = it.firClassLike(session)
|
||||
?.followAllAlias(session)
|
||||
val that = it.firClassLike(declarationSiteSession)
|
||||
?.followAllAlias(declarationSiteSession)
|
||||
?.safeAs<FirClass<*>>()
|
||||
?: continue
|
||||
|
||||
@@ -96,8 +96,8 @@ fun FirClass<*>.isSupertypeOf(other: FirClass<*>): Boolean {
|
||||
*/
|
||||
fun FirClass<*>.isSupertypeOf(other: FirClass<*>, exclude: MutableSet<FirClass<*>>): Boolean {
|
||||
for (it in other.superTypeRefs) {
|
||||
val candidate = it.firClassLike(session)
|
||||
?.followAllAlias(session)
|
||||
val candidate = it.firClassLike(declarationSiteSession)
|
||||
?.followAllAlias(declarationSiteSession)
|
||||
?.safeAs<FirClass<*>>()
|
||||
?: continue
|
||||
|
||||
|
||||
+1
-1
@@ -81,7 +81,7 @@ object FirConflictsChecker : FirBasicDeclarationChecker() {
|
||||
session: FirSession
|
||||
) {
|
||||
val conflicting = conflictingSymbol.fir as? FirDeclaration ?: return
|
||||
if (declaration.session.moduleInfo != conflicting.session.moduleInfo) return
|
||||
if (declaration.declarationSiteSession.moduleInfo != conflicting.declarationSiteSession.moduleInfo) return
|
||||
val actualConflictingPresentation = conflictingPresentation ?: presenter.represent(conflicting)
|
||||
if (conflicting == declaration || actualConflictingPresentation != declarationPresentation) return
|
||||
val actualConflictingFile =
|
||||
|
||||
+1
-1
@@ -44,7 +44,7 @@ object FirExposedVisibilityDeclarationChecker : FirMemberDeclarationChecker() {
|
||||
val isInterface = declaration.classKind == ClassKind.INTERFACE
|
||||
for (supertypeRef in supertypes) {
|
||||
val supertype = supertypeRef.coneTypeSafe<ConeClassLikeType>() ?: continue
|
||||
val clazz = supertype.toRegularClass(declaration.session) ?: continue
|
||||
val clazz = supertype.toRegularClass(declaration.declarationSiteSession) ?: continue
|
||||
val superIsInterface = clazz.classKind == ClassKind.INTERFACE
|
||||
if (superIsInterface != isInterface) {
|
||||
continue
|
||||
|
||||
+1
-1
@@ -58,7 +58,7 @@ object FirNotImplementedOverrideChecker : FirClassChecker() {
|
||||
!visibility.visibleFromPackage(classPackage, symbol.callableId.packageName)
|
||||
) return true
|
||||
if (visibility == Visibilities.Internal &&
|
||||
session !== declaration.session
|
||||
declarationSiteSession !== declaration.declarationSiteSession
|
||||
) return true
|
||||
return false
|
||||
}
|
||||
|
||||
@@ -317,7 +317,7 @@ class MultiModuleHtmlFirDump(private val outputRoot: File) {
|
||||
require(inModule)
|
||||
|
||||
val dumpOutput = index.files[file] ?: error("No location for ${file.name}")
|
||||
val dumper = HtmlFirDump(LinkResolver(dumpOutput), file.session)
|
||||
val dumper = HtmlFirDump(LinkResolver(dumpOutput), file.declarationSiteSession)
|
||||
val builder = StringBuilder()
|
||||
dumper.generate(file, builder)
|
||||
|
||||
|
||||
+4
-4
@@ -200,7 +200,7 @@ class FirElementSerializer private constructor(
|
||||
@OptIn(ExperimentalStdlibApi::class)
|
||||
private fun FirClass<*>.declarations(): List<FirCallableMemberDeclaration<*>> = buildList {
|
||||
val memberScope =
|
||||
defaultType().scope(session, scopeSession, FakeOverrideTypeCalculator.DoNothing)
|
||||
defaultType().scope(declarationSiteSession, scopeSession, FakeOverrideTypeCalculator.DoNothing)
|
||||
?: error("Null scope for $this")
|
||||
|
||||
fun addDeclarationIfNeeded(symbol: FirCallableSymbol<*>) {
|
||||
@@ -946,17 +946,17 @@ class FirElementSerializer private constructor(
|
||||
): FirElementSerializer {
|
||||
val parentClassId = klass.symbol.classId.outerClassId
|
||||
val parent = if (parentClassId != null && !parentClassId.isLocal) {
|
||||
val parentClass = klass.session.symbolProvider.getClassLikeSymbolByFqName(parentClassId)!!.fir as FirRegularClass
|
||||
val parentClass = klass.declarationSiteSession.symbolProvider.getClassLikeSymbolByFqName(parentClassId)!!.fir as FirRegularClass
|
||||
parentSerializer ?: create(scopeSession, parentClass, extension, null, typeApproximator)
|
||||
} else {
|
||||
createTopLevel(klass.session, scopeSession, extension, typeApproximator)
|
||||
createTopLevel(klass.declarationSiteSession, scopeSession, extension, typeApproximator)
|
||||
}
|
||||
|
||||
// Calculate type parameter ids for the outer class beforehand, as it would've had happened if we were always
|
||||
// serializing outer classes before nested classes.
|
||||
// Otherwise our interner can get wrong ids because we may serialize classes in any order.
|
||||
val serializer = FirElementSerializer(
|
||||
klass.session,
|
||||
klass.declarationSiteSession,
|
||||
scopeSession,
|
||||
klass,
|
||||
Interner(parent.typeParameters),
|
||||
|
||||
+4
-4
@@ -210,8 +210,8 @@ class FirJvmSerializerExtension(
|
||||
private fun FirFunction<*>.needsInlineParameterNullCheckRequirement(): Boolean =
|
||||
this is FirSimpleFunction && isInline && !isSuspend && !isParamAssertionsDisabled &&
|
||||
!Visibilities.isPrivate(visibility) &&
|
||||
(valueParameters.any { it.returnTypeRef.coneType.isBuiltinFunctionalType(session) } ||
|
||||
receiverTypeRef?.coneType?.isBuiltinFunctionalType(session) == true)
|
||||
(valueParameters.any { it.returnTypeRef.coneType.isBuiltinFunctionalType(declarationSiteSession) } ||
|
||||
receiverTypeRef?.coneType?.isBuiltinFunctionalType(declarationSiteSession) == true)
|
||||
|
||||
override fun serializeProperty(
|
||||
property: FirProperty,
|
||||
@@ -256,7 +256,7 @@ class FirJvmSerializerExtension(
|
||||
|
||||
val container =
|
||||
dispatchReceiverType?.classId?.let {
|
||||
session.firProvider.getFirClassifierByFqName(it) as? FirRegularClass
|
||||
declarationSiteSession.firProvider.getFirClassifierByFqName(it) as? FirRegularClass
|
||||
}
|
||||
if (container == null || !container.isCompanion) {
|
||||
return false
|
||||
@@ -264,7 +264,7 @@ class FirJvmSerializerExtension(
|
||||
|
||||
val grandParent =
|
||||
container.classId.outerClassId?.let {
|
||||
session.firProvider.getFirClassifierByFqName(it) as? FirRegularClass
|
||||
declarationSiteSession.firProvider.getFirClassifierByFqName(it) as? FirRegularClass
|
||||
}
|
||||
return grandParent != null &&
|
||||
(grandParent.classKind == ClassKind.INTERFACE || grandParent.classKind == ClassKind.ANNOTATION_CLASS)
|
||||
|
||||
+3
-3
@@ -79,7 +79,7 @@ class FirMetadataSerializer(
|
||||
val function = this
|
||||
return buildAnonymousFunction {
|
||||
val typeParameterSet = function.typeParameters.filterIsInstanceTo(mutableSetOf<FirTypeParameter>())
|
||||
session = function.session
|
||||
session = function.declarationSiteSession
|
||||
origin = FirDeclarationOrigin.Source
|
||||
symbol = FirAnonymousFunctionSymbol()
|
||||
returnTypeRef = function.returnTypeRef.approximated(toSuper = true, typeParameterSet)
|
||||
@@ -98,7 +98,7 @@ class FirMetadataSerializer(
|
||||
val accessor = this
|
||||
return buildPropertyAccessor {
|
||||
val typeParameterSet = accessor.typeParameters.toMutableSet()
|
||||
session = accessor.session
|
||||
session = accessor.declarationSiteSession
|
||||
origin = FirDeclarationOrigin.Source
|
||||
returnTypeRef = accessor.returnTypeRef.approximated(toSuper = true, typeParameterSet)
|
||||
symbol = FirPropertyAccessorSymbol()
|
||||
@@ -118,7 +118,7 @@ class FirMetadataSerializer(
|
||||
val property = this
|
||||
return buildProperty {
|
||||
val typeParameterSet = property.typeParameters.toMutableSet()
|
||||
session = property.session
|
||||
session = property.declarationSiteSession
|
||||
origin = FirDeclarationOrigin.Source
|
||||
symbol = FirPropertySymbol(property.symbol.callableId)
|
||||
returnTypeRef = property.returnTypeRef.approximated(toSuper = true, typeParameterSet)
|
||||
|
||||
+1
-1
@@ -739,7 +739,7 @@ class Fir2IrDeclarationStorage(
|
||||
val field = this
|
||||
return buildProperty {
|
||||
source = field.source
|
||||
session = field.session
|
||||
session = field.declarationSiteSession
|
||||
origin = field.origin
|
||||
returnTypeRef = field.returnTypeRef
|
||||
name = field.name
|
||||
|
||||
@@ -14,7 +14,7 @@ sealed class FirMetadataSource : MetadataSource {
|
||||
abstract val fir: FirDeclaration
|
||||
|
||||
val session: FirSession
|
||||
get() = fir.session
|
||||
get() = fir.declarationSiteSession
|
||||
|
||||
override val name: Name?
|
||||
get() = when (val fir = fir) {
|
||||
|
||||
@@ -151,7 +151,7 @@ class JavaScopeProvider(
|
||||
|
||||
private tailrec fun FirRegularClass.findJavaSuperClass(): FirRegularClass? {
|
||||
val superClass = superConeTypes.firstNotNullResult {
|
||||
(it.lookupTag.toSymbol(session)?.fir as? FirRegularClass)?.takeIf { superClass ->
|
||||
(it.lookupTag.toSymbol(declarationSiteSession)?.fir as? FirRegularClass)?.takeIf { superClass ->
|
||||
superClass.classKind == ClassKind.CLASS
|
||||
}
|
||||
} ?: return null
|
||||
@@ -166,7 +166,7 @@ class JavaScopeProvider(
|
||||
DFS.dfs(listOf(this),
|
||||
{ regularClass ->
|
||||
regularClass.superConeTypes.mapNotNull {
|
||||
it.lookupTag.toSymbol(session)?.fir as? FirRegularClass
|
||||
it.lookupTag.toSymbol(declarationSiteSession)?.fir as? FirRegularClass
|
||||
}
|
||||
},
|
||||
object : DFS.AbstractNodeHandler<FirRegularClass, Unit>() {
|
||||
|
||||
@@ -213,7 +213,7 @@ class JavaSymbolProvider(
|
||||
) {
|
||||
replaceSuperTypeRefs(
|
||||
javaClass.supertypes.map { supertype ->
|
||||
supertype.toFirResolvedTypeRef(session, javaTypeParameterStack, isForSupertypes = true, forTypeParameterBounds = false)
|
||||
supertype.toFirResolvedTypeRef(declarationSiteSession, javaTypeParameterStack, isForSupertypes = true, forTypeParameterBounds = false)
|
||||
}
|
||||
)
|
||||
}
|
||||
@@ -354,7 +354,7 @@ class JavaSymbolProvider(
|
||||
valueParametersForAnnotationConstructor.forEach { javaMethod, firValueParameter ->
|
||||
javaMethod.annotationParameterDefaultValue?.let { javaDefaultValue ->
|
||||
firValueParameter.defaultValue =
|
||||
javaDefaultValue.toFirExpression(session, javaTypeParameterStack, firValueParameter.returnTypeRef)
|
||||
javaDefaultValue.toFirExpression(declarationSiteSession, javaTypeParameterStack, firValueParameter.returnTypeRef)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -435,7 +435,7 @@ private fun FirRegularClass.createRawArguments(
|
||||
val erasedUpperBound = typeParameter.getErasedUpperBound {
|
||||
defaultType().withArguments(defaultArgs.toTypedArray())
|
||||
}
|
||||
computeRawProjection(session, typeParameter, position, erasedUpperBound)
|
||||
computeRawProjection(declarationSiteSession, typeParameter, position, erasedUpperBound)
|
||||
}
|
||||
|
||||
private fun buildEnumCall(session: FirSession, classId: ClassId?, entryName: Name?) =
|
||||
|
||||
@@ -31,7 +31,7 @@ import kotlin.properties.Delegates
|
||||
@OptIn(FirImplementationDetail::class)
|
||||
class FirJavaClass @FirImplementationDetail internal constructor(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val name: Name,
|
||||
override val annotations: MutableList<FirAnnotationCall>,
|
||||
|
||||
+1
-1
@@ -29,7 +29,7 @@ import kotlin.properties.Delegates
|
||||
@OptIn(FirImplementationDetail::class)
|
||||
class FirJavaConstructor @FirImplementationDetail constructor(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override val symbol: FirConstructorSymbol,
|
||||
override val isPrimary: Boolean,
|
||||
override var returnTypeRef: FirTypeRef,
|
||||
|
||||
@@ -33,7 +33,7 @@ import kotlin.properties.Delegates
|
||||
@OptIn(FirImplementationDetail::class)
|
||||
class FirJavaField @FirImplementationDetail constructor(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override val symbol: FirFieldSymbol,
|
||||
override val name: Name,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
|
||||
@@ -51,7 +51,7 @@ import kotlin.properties.Delegates
|
||||
@OptIn(FirImplementationDetail::class)
|
||||
class FirJavaMethod @FirImplementationDetail constructor(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
override var returnTypeRef: FirTypeRef,
|
||||
@@ -235,7 +235,7 @@ inline fun buildJavaMethodCopy(original: FirSimpleFunction, init: FirJavaMethodB
|
||||
}
|
||||
val copyBuilder = FirJavaMethodBuilder()
|
||||
copyBuilder.source = original.source
|
||||
copyBuilder.session = original.session
|
||||
copyBuilder.session = original.declarationSiteSession
|
||||
copyBuilder.resolvePhase = original.resolvePhase
|
||||
copyBuilder.attributes = original.attributes.copy()
|
||||
copyBuilder.returnTypeRef = original.returnTypeRef
|
||||
|
||||
+2
-2
@@ -27,7 +27,7 @@ import kotlin.contracts.contract
|
||||
@OptIn(FirImplementationDetail::class)
|
||||
class FirJavaValueParameter @FirImplementationDetail constructor(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
override var returnTypeRef: FirTypeRef,
|
||||
@@ -182,7 +182,7 @@ inline fun buildJavaValueParameterCopy(original: FirValueParameter, init: FirJav
|
||||
}
|
||||
val copyBuilder = FirJavaValueParameterBuilder()
|
||||
copyBuilder.source = original.source
|
||||
copyBuilder.session = original.session
|
||||
copyBuilder.session = original.declarationSiteSession
|
||||
copyBuilder.attributes = original.attributes.copy()
|
||||
copyBuilder.returnTypeRef = original.returnTypeRef
|
||||
copyBuilder.name = original.name
|
||||
|
||||
+2
-2
@@ -382,13 +382,13 @@ class JavaClassUseSiteMemberScope(
|
||||
}
|
||||
|
||||
private fun FirFunction<*>.computeJvmSignature(): String? {
|
||||
return computeJvmSignature { it.toConeKotlinTypeProbablyFlexible(session, typeParameterStack) }
|
||||
return computeJvmSignature { it.toConeKotlinTypeProbablyFlexible(declarationSiteSession, typeParameterStack) }
|
||||
}
|
||||
|
||||
private fun FirFunction<*>.computeJvmDescriptor(customName: String? = null, includeReturnType: Boolean = false): String {
|
||||
return computeJvmDescriptor(customName, includeReturnType) {
|
||||
it.toConeKotlinTypeProbablyFlexible(
|
||||
session,
|
||||
declarationSiteSession,
|
||||
typeParameterStack
|
||||
)
|
||||
}
|
||||
|
||||
@@ -61,7 +61,7 @@ fun FirFunctionCall.copy(
|
||||
fun FirAnonymousFunction.copy(
|
||||
receiverTypeRef: FirTypeRef? = this.receiverTypeRef,
|
||||
source: FirSourceElement? = this.source,
|
||||
session: FirSession = this.session,
|
||||
session: FirSession = this.declarationSiteSession,
|
||||
origin: FirDeclarationOrigin = this.origin,
|
||||
returnTypeRef: FirTypeRef = this.returnTypeRef,
|
||||
valueParameters: List<FirValueParameter> = this.valueParameters,
|
||||
@@ -116,7 +116,7 @@ fun FirTypeParameter.copy(
|
||||
): FirTypeParameter {
|
||||
return buildTypeParameter {
|
||||
source = this@copy.source
|
||||
session = this@copy.session
|
||||
session = this@copy.declarationSiteSession
|
||||
name = this@copy.name
|
||||
symbol = this@copy.symbol
|
||||
variance = this@copy.variance
|
||||
|
||||
@@ -70,11 +70,11 @@ abstract class FirVisibilityChecker : FirSessionComponent {
|
||||
val symbol = declaration.symbol
|
||||
return when (declaration.visibility) {
|
||||
Visibilities.Internal -> {
|
||||
declaration.session == session || session.moduleVisibilityChecker?.isInFriendModule(declaration) == true
|
||||
declaration.declarationSiteSession == session || session.moduleVisibilityChecker?.isInFriendModule(declaration) == true
|
||||
}
|
||||
Visibilities.Private, Visibilities.PrivateToThis -> {
|
||||
val ownerId = symbol.getOwnerId()
|
||||
if (declaration.session == session) {
|
||||
if (declaration.declarationSiteSession == session) {
|
||||
when {
|
||||
ownerId == null -> {
|
||||
val candidateFile = when (symbol) {
|
||||
|
||||
@@ -361,7 +361,7 @@ private fun initialTypeOfCandidate(candidate: Candidate, typeRef: FirResolvedTyp
|
||||
|
||||
inline val FirCallableDeclaration<*>.containingClass: FirRegularClass?
|
||||
get() = this.containingClassAttr?.let { lookupTag ->
|
||||
session.symbolProvider.getSymbolByLookupTag(lookupTag)?.fir as? FirRegularClass
|
||||
declarationSiteSession.symbolProvider.getSymbolByLookupTag(lookupTag)?.fir as? FirRegularClass
|
||||
}
|
||||
|
||||
val FirFunction<*>.asForbiddenNamedArgumentsTarget: ForbiddenNamedArgumentsTarget?
|
||||
|
||||
@@ -195,7 +195,7 @@ internal object CheckVisibility : CheckerStage() {
|
||||
|
||||
if (declaration is FirConstructor) {
|
||||
// TODO: Should be some other form
|
||||
val classSymbol = declaration.returnTypeRef.coneTypeUnsafe<ConeClassLikeType>().lookupTag.toSymbol(declaration.session)
|
||||
val classSymbol = declaration.returnTypeRef.coneTypeUnsafe<ConeClassLikeType>().lookupTag.toSymbol(declaration.declarationSiteSession)
|
||||
|
||||
if (classSymbol is FirRegularClassSymbol) {
|
||||
if (classSymbol.fir.classKind.isSingleton) {
|
||||
|
||||
+1
-1
@@ -77,7 +77,7 @@ private fun extraLambdaInfo(
|
||||
?: expectedType?.typeArguments?.singleOrNull()?.safeAs<ConeKotlinTypeProjection>()?.type?.takeIf { isFunctionSupertype }
|
||||
?: typeVariable.defaultType
|
||||
|
||||
val nothingType = argument.session.builtinTypes.nothingType.type
|
||||
val nothingType = argument.declarationSiteSession.builtinTypes.nothingType.type
|
||||
val parameters = argument.valueParameters.map {
|
||||
it.returnTypeRef.coneTypeSafe<ConeKotlinType>() ?: nothingType
|
||||
}
|
||||
|
||||
+1
-1
@@ -156,7 +156,7 @@ data class ConeSubstitutorByMap(val substitution: Map<FirTypeParameterSymbol, Co
|
||||
override fun substituteType(type: ConeKotlinType): ConeKotlinType? {
|
||||
if (type !is ConeTypeParameterType) return null
|
||||
val result = substitution[type.lookupTag.symbol].updateNullabilityIfNeeded(type) ?: return null
|
||||
val session = type.lookupTag.symbol.fir.session
|
||||
val session = type.lookupTag.symbol.fir.declarationSiteSession
|
||||
if (type.isUnsafeVarianceType(session)) {
|
||||
return session.inferenceComponents.approximator.approximateToSuperType(
|
||||
result, TypeApproximatorConfiguration.FinalApproximationAfterResolutionAndInference
|
||||
|
||||
+2
-2
@@ -40,8 +40,8 @@ abstract class FirAbstractPhaseTransformer<D>(
|
||||
}
|
||||
|
||||
protected fun checkSessionConsistency(file: FirFile) {
|
||||
assert(session === file.session) {
|
||||
assert(session === file.declarationSiteSession) {
|
||||
"File ${file.name} and transformer ${this::class} have inconsistent sessions"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -48,7 +48,7 @@ class FirSealedClassInheritorsProcessor(
|
||||
data.computeIfAbsent(regularClass) { mutableListOf() }
|
||||
}
|
||||
|
||||
val symbolProvider = regularClass.session.symbolProvider
|
||||
val symbolProvider = regularClass.declarationSiteSession.symbolProvider
|
||||
|
||||
for (typeRef in regularClass.superTypeRefs) {
|
||||
val parent = extractClassFromTypeRef(symbolProvider, typeRef).takeIf { it?.modality == Modality.SEALED } ?: continue
|
||||
|
||||
+1
-1
@@ -390,7 +390,7 @@ abstract class AbstractFirStatusResolveTransformer(
|
||||
return
|
||||
}
|
||||
if (regularClass.resolvePhase > FirResolvePhase.STATUS) return
|
||||
val firProvider = regularClass.session.firProvider
|
||||
val firProvider = regularClass.declarationSiteSession.firProvider
|
||||
val statusComputationStatus = statusComputationSession[regularClass]
|
||||
if (!statusComputationStatus.requiresComputation) return
|
||||
|
||||
|
||||
+1
-1
@@ -23,7 +23,7 @@ fun AbstractFirBasedSymbol<*>.ensureResolved(
|
||||
// TODO: Decide which one session should be used and probably get rid of the parameter if use-site session is not needed
|
||||
@Suppress("UNUSED_PARAMETER") useSiteSession: FirSession,
|
||||
) {
|
||||
val session = (fir as FirDeclaration).session
|
||||
val session = (fir as FirDeclaration).declarationSiteSession
|
||||
val phaseManager = session.phaseManager
|
||||
phaseManager.ensureResolved(this, requiredPhase)
|
||||
}
|
||||
|
||||
+1
-1
@@ -43,7 +43,7 @@ class FirPluginAnnotationsResolveTransformer(
|
||||
override fun transformFile(file: FirFile, data: Any?): FirFile {
|
||||
checkSessionConsistency(file)
|
||||
if (!extensionService.hasPredicateBasedExtensions) return file
|
||||
val registeredPluginAnnotations = file.session.registeredPluginAnnotations
|
||||
val registeredPluginAnnotations = file.declarationSiteSession.registeredPluginAnnotations
|
||||
file.replaceResolvePhase(FirResolvePhase.ANNOTATIONS_FOR_PLUGINS)
|
||||
val newAnnotations = file.resolveAnnotations(registeredPluginAnnotations.annotations, registeredPluginAnnotations.metaAnnotations)
|
||||
if (!newAnnotations.isEmpty) {
|
||||
|
||||
+1
-1
@@ -37,7 +37,7 @@ enum class FirImportingScopeFilter {
|
||||
// though, "unknown" will always become public anyway.
|
||||
Visibilities.Unknown -> true
|
||||
Visibilities.Internal ->
|
||||
symbol.fir.session == session || session.moduleVisibilityChecker?.isInFriendModule(fir) == true
|
||||
symbol.fir.declarationSiteSession == session || session.moduleVisibilityChecker?.isInFriendModule(fir) == true
|
||||
// All non-`internal` visibilities are either even more restrictive (e.g. `private`) or must not
|
||||
// be checked in imports (e.g. `protected` may be valid in some use sites).
|
||||
else -> !fir.status.visibility.mustCheckInImports()
|
||||
|
||||
+1
-1
@@ -65,7 +65,7 @@ class FirClassDeclaredMemberScope(
|
||||
val symbols = callablesIndex[name] ?: emptyList()
|
||||
for (symbol in symbols) {
|
||||
if (symbol is D) {
|
||||
symbol.ensureResolvedForCalls(symbol.fir.session)
|
||||
symbol.ensureResolvedForCalls(symbol.fir.declarationSiteSession)
|
||||
processor(symbol)
|
||||
}
|
||||
}
|
||||
|
||||
+3
-3
@@ -59,7 +59,7 @@ class FirDeclaredMemberScopeProvider : FirSessionComponent {
|
||||
|
||||
fun declaredMemberScope(klass: FirClass<*>): FirClassDeclaredMemberScope {
|
||||
return klass
|
||||
.session
|
||||
.declarationSiteSession
|
||||
.declaredMemberScopeProvider
|
||||
.declaredMemberScope(klass, useLazyNestedClassifierScope = false, existingNames = null, symbolProvider = null)
|
||||
}
|
||||
@@ -70,14 +70,14 @@ fun declaredMemberScopeWithLazyNestedScope(
|
||||
symbolProvider: FirSymbolProvider
|
||||
): FirScope {
|
||||
return klass
|
||||
.session
|
||||
.declarationSiteSession
|
||||
.declaredMemberScopeProvider
|
||||
.declaredMemberScope(klass, useLazyNestedClassifierScope = true, existingNames = existingNames, symbolProvider = symbolProvider)
|
||||
}
|
||||
|
||||
fun nestedClassifierScope(klass: FirClass<*>): FirNestedClassifierScope? {
|
||||
return klass
|
||||
.session
|
||||
.declarationSiteSession
|
||||
.declaredMemberScopeProvider
|
||||
.nestedClassifierScope(klass)
|
||||
}
|
||||
|
||||
+1
-1
@@ -465,7 +465,7 @@ object FirFakeOverrideGenerator {
|
||||
if (typeParameter !is FirTypeParameter) return@map null
|
||||
FirTypeParameterBuilder().apply {
|
||||
source = typeParameter.source
|
||||
session = typeParameter.session
|
||||
session = typeParameter.declarationSiteSession
|
||||
origin = FirDeclarationOrigin.SubstitutionOverride
|
||||
name = typeParameter.name
|
||||
symbol = FirTypeParameterSymbol()
|
||||
|
||||
+1
-1
@@ -344,7 +344,7 @@ class FirTypeIntersectionScope private constructor(
|
||||
val newSymbol = FirIntersectionOverridePropertySymbol(mostSpecific.callableId, overrides)
|
||||
val mostSpecificProperty = mostSpecific.fir
|
||||
FirFakeOverrideGenerator.createCopyForFirProperty(
|
||||
newSymbol, mostSpecificProperty, mostSpecificProperty.session, FirDeclarationOrigin.IntersectionOverride,
|
||||
newSymbol, mostSpecificProperty, mostSpecificProperty.declarationSiteSession, FirDeclarationOrigin.IntersectionOverride,
|
||||
newModality = newModality,
|
||||
newVisibility = newVisibility,
|
||||
newDispatchReceiverType = dispatchReceiverType,
|
||||
|
||||
+1
-1
@@ -19,7 +19,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
sealed interface FirAnnotatedDeclaration : FirDeclaration, FirAnnotationContainer {
|
||||
override val source: FirSourceElement?
|
||||
override val session: FirSession
|
||||
override val declarationSiteSession: FirSession
|
||||
override val resolvePhase: FirResolvePhase
|
||||
override val origin: FirDeclarationOrigin
|
||||
override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -25,7 +25,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirAnonymousFunction : FirFunction<FirAnonymousFunction>, FirExpression(), FirTypeParametersOwner {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
+1
-1
@@ -22,7 +22,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirAnonymousInitializer : FirPureAbstractElement(), FirDeclaration, FirSymbolOwner<FirAnonymousInitializer>, FirControlFlowGraphOwner {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -24,7 +24,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirAnonymousObject : FirClass<FirAnonymousObject>, FirControlFlowGraphOwner, FirExpression() {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
sealed interface FirCallableDeclaration<F : FirCallableDeclaration<F>> : FirTypedDeclaration, FirSymbolOwner<F> {
|
||||
override val source: FirSourceElement?
|
||||
override val session: FirSession
|
||||
override val declarationSiteSession: FirSession
|
||||
override val resolvePhase: FirResolvePhase
|
||||
override val origin: FirDeclarationOrigin
|
||||
override val attributes: FirDeclarationAttributes
|
||||
|
||||
+1
-1
@@ -22,7 +22,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
sealed interface FirCallableMemberDeclaration<F : FirCallableMemberDeclaration<F>> : FirCallableDeclaration<F>, FirMemberDeclaration {
|
||||
override val source: FirSourceElement?
|
||||
override val session: FirSession
|
||||
override val declarationSiteSession: FirSession
|
||||
override val resolvePhase: FirResolvePhase
|
||||
override val origin: FirDeclarationOrigin
|
||||
override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -23,7 +23,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
sealed interface FirClass<F : FirClass<F>> : FirClassLikeDeclaration<F>, FirStatement, FirTypeParameterRefsOwner {
|
||||
override val source: FirSourceElement?
|
||||
override val session: FirSession
|
||||
override val declarationSiteSession: FirSession
|
||||
override val resolvePhase: FirResolvePhase
|
||||
override val origin: FirDeclarationOrigin
|
||||
override val attributes: FirDeclarationAttributes
|
||||
|
||||
+1
-1
@@ -21,7 +21,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
sealed interface FirClassLikeDeclaration<F : FirClassLikeDeclaration<F>> : FirAnnotatedDeclaration, FirStatement, FirSymbolOwner<F> {
|
||||
override val source: FirSourceElement?
|
||||
override val session: FirSession
|
||||
override val declarationSiteSession: FirSession
|
||||
override val resolvePhase: FirResolvePhase
|
||||
override val origin: FirDeclarationOrigin
|
||||
override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -26,7 +26,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirConstructor : FirPureAbstractElement(), FirFunction<FirConstructor>, FirCallableMemberDeclaration<FirConstructor>, FirTypeParameterRefsOwner {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -17,7 +17,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
sealed interface FirDeclaration : FirElement {
|
||||
override val source: FirSourceElement?
|
||||
val session: FirSession
|
||||
val declarationSiteSession: FirSession
|
||||
val resolvePhase: FirResolvePhase
|
||||
val origin: FirDeclarationOrigin
|
||||
val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -25,7 +25,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirEnumEntry : FirVariable<FirEnumEntry>(), FirCallableMemberDeclaration<FirEnumEntry> {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -25,7 +25,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirErrorFunction : FirPureAbstractElement(), FirFunction<FirErrorFunction>, FirDiagnosticHolder, FirTypeParametersOwner {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -25,7 +25,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirErrorProperty : FirVariable<FirErrorProperty>(), FirDiagnosticHolder, FirTypeParametersOwner {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -25,7 +25,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirField : FirVariable<FirField>(), FirTypeParametersOwner, FirCallableMemberDeclaration<FirField> {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -20,7 +20,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirFile : FirPureAbstractElement(), FirAnnotatedDeclaration {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -24,7 +24,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
sealed interface FirFunction<F : FirFunction<F>> : FirCallableDeclaration<F>, FirTargetElement, FirTypeParameterRefsOwner, FirControlFlowGraphOwner, FirStatement {
|
||||
override val source: FirSourceElement?
|
||||
override val session: FirSession
|
||||
override val declarationSiteSession: FirSession
|
||||
override val resolvePhase: FirResolvePhase
|
||||
override val origin: FirDeclarationOrigin
|
||||
override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -18,7 +18,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
sealed interface FirMemberDeclaration : FirAnnotatedDeclaration, FirTypeParameterRefsOwner {
|
||||
override val source: FirSourceElement?
|
||||
override val session: FirSession
|
||||
override val declarationSiteSession: FirSession
|
||||
override val resolvePhase: FirResolvePhase
|
||||
override val origin: FirDeclarationOrigin
|
||||
override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -27,7 +27,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirProperty : FirVariable<FirProperty>(), FirTypeParametersOwner, FirControlFlowGraphOwner, FirCallableMemberDeclaration<FirProperty> {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -26,7 +26,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirPropertyAccessor : FirPureAbstractElement(), FirFunction<FirPropertyAccessor>, FirCallableMemberDeclaration<FirPropertyAccessor>, FirContractDescriptionOwner, FirTypeParametersOwner {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -25,7 +25,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirRegularClass : FirPureAbstractElement(), FirMemberDeclaration, FirTypeParameterRefsOwner, FirControlFlowGraphOwner, FirClass<FirRegularClass> {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -27,7 +27,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirSimpleFunction : FirPureAbstractElement(), FirFunction<FirSimpleFunction>, FirCallableMemberDeclaration<FirSimpleFunction>, FirContractDescriptionOwner, FirTypeParametersOwner {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -22,7 +22,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirTypeAlias : FirPureAbstractElement(), FirClassLikeDeclaration<FirTypeAlias>, FirMemberDeclaration, FirTypeParametersOwner {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -24,7 +24,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirTypeParameter : FirPureAbstractElement(), FirTypeParameterRef, FirAnnotatedDeclaration, FirSymbolOwner<FirTypeParameter> {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -19,7 +19,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
sealed interface FirTypedDeclaration : FirAnnotatedDeclaration {
|
||||
override val source: FirSourceElement?
|
||||
override val session: FirSession
|
||||
override val declarationSiteSession: FirSession
|
||||
override val resolvePhase: FirResolvePhase
|
||||
override val origin: FirDeclarationOrigin
|
||||
override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -24,7 +24,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
abstract class FirValueParameter : FirVariable<FirValueParameter>(), FirControlFlowGraphOwner {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
@@ -25,7 +25,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
sealed class FirVariable<F : FirVariable<F>> : FirPureAbstractElement(), FirCallableDeclaration<F>, FirAnnotatedDeclaration, FirStatement {
|
||||
abstract override val source: FirSourceElement?
|
||||
abstract override val session: FirSession
|
||||
abstract override val declarationSiteSession: FirSession
|
||||
abstract override val resolvePhase: FirResolvePhase
|
||||
abstract override val origin: FirDeclarationOrigin
|
||||
abstract override val attributes: FirDeclarationAttributes
|
||||
|
||||
+1
-1
@@ -98,7 +98,7 @@ inline fun buildConstructorCopy(original: FirConstructor, init: FirConstructorBu
|
||||
}
|
||||
val copyBuilder = FirConstructorBuilder()
|
||||
copyBuilder.source = original.source
|
||||
copyBuilder.session = original.session
|
||||
copyBuilder.session = original.declarationSideSession
|
||||
copyBuilder.resolvePhase = original.resolvePhase
|
||||
copyBuilder.origin = original.origin
|
||||
copyBuilder.attributes = original.attributes.copy()
|
||||
|
||||
+1
-1
@@ -95,7 +95,7 @@ inline fun buildPropertyAccessorCopy(original: FirPropertyAccessor, init: FirPro
|
||||
}
|
||||
val copyBuilder = FirPropertyAccessorBuilder()
|
||||
copyBuilder.source = original.source
|
||||
copyBuilder.session = original.session
|
||||
copyBuilder.session = original.declarationSideSession
|
||||
copyBuilder.resolvePhase = original.resolvePhase
|
||||
copyBuilder.origin = original.origin
|
||||
copyBuilder.attributes = original.attributes.copy()
|
||||
|
||||
+1
-1
@@ -104,7 +104,7 @@ inline fun buildPropertyCopy(original: FirProperty, init: FirPropertyBuilder.()
|
||||
}
|
||||
val copyBuilder = FirPropertyBuilder()
|
||||
copyBuilder.source = original.source
|
||||
copyBuilder.session = original.session
|
||||
copyBuilder.session = original.declarationSideSession
|
||||
copyBuilder.resolvePhase = original.resolvePhase
|
||||
copyBuilder.origin = original.origin
|
||||
copyBuilder.attributes = original.attributes.copy()
|
||||
|
||||
+1
-1
@@ -96,7 +96,7 @@ inline fun buildSimpleFunctionCopy(original: FirSimpleFunction, init: FirSimpleF
|
||||
}
|
||||
val copyBuilder = FirSimpleFunctionBuilder()
|
||||
copyBuilder.source = original.source
|
||||
copyBuilder.session = original.session
|
||||
copyBuilder.session = original.declarationSideSession
|
||||
copyBuilder.resolvePhase = original.resolvePhase
|
||||
copyBuilder.origin = original.origin
|
||||
copyBuilder.attributes = original.attributes.copy()
|
||||
|
||||
+1
-1
@@ -81,7 +81,7 @@ inline fun buildValueParameterCopy(original: FirValueParameter, init: FirValuePa
|
||||
}
|
||||
val copyBuilder = FirValueParameterBuilder()
|
||||
copyBuilder.source = original.source
|
||||
copyBuilder.session = original.session
|
||||
copyBuilder.session = original.declarationSideSession
|
||||
copyBuilder.resolvePhase = original.resolvePhase
|
||||
copyBuilder.origin = original.origin
|
||||
copyBuilder.attributes = original.attributes.copy()
|
||||
|
||||
+1
-1
@@ -30,7 +30,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirAnonymousFunctionImpl(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
override val annotations: MutableList<FirAnnotationCall>,
|
||||
|
||||
+1
-1
@@ -23,7 +23,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirAnonymousInitializerImpl(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
+1
-1
@@ -28,7 +28,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirAnonymousObjectImpl(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
+1
-1
@@ -31,7 +31,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirConstructorImpl(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
+1
-1
@@ -28,7 +28,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirDefaultSetterValueParameter(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
+1
-1
@@ -31,7 +31,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirEnumEntryImpl(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
+1
-1
@@ -29,7 +29,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirErrorFunctionImpl(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
+1
-1
@@ -30,7 +30,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirErrorPropertyImpl(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
@@ -32,7 +32,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
class FirFieldImpl @FirImplementationDetail constructor(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
@@ -24,7 +24,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirFileImpl(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
+1
-1
@@ -31,7 +31,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirPrimaryConstructor(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
+1
-1
@@ -33,7 +33,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
open class FirPropertyAccessorImpl @FirImplementationDetail constructor(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
@@ -33,7 +33,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirPropertyImpl(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
+1
-1
@@ -30,7 +30,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirRegularClassImpl(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
+1
-1
@@ -32,7 +32,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirSimpleFunctionImpl(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
+1
-1
@@ -26,7 +26,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirTypeAliasImpl(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
+1
-1
@@ -25,7 +25,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirTypeParameterImpl(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
+1
-1
@@ -28,7 +28,7 @@ import org.jetbrains.kotlin.fir.visitors.*
|
||||
|
||||
internal class FirValueParameterImpl(
|
||||
override val source: FirSourceElement?,
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override var resolvePhase: FirResolvePhase,
|
||||
override val origin: FirDeclarationOrigin,
|
||||
override val attributes: FirDeclarationAttributes,
|
||||
|
||||
+1
-1
@@ -22,7 +22,7 @@ import org.jetbrains.kotlin.name.Name
|
||||
import org.jetbrains.kotlin.serialization.deserialization.descriptors.DeserializedContainerSource
|
||||
|
||||
class FirSyntheticProperty(
|
||||
override val session: FirSession,
|
||||
override val declarationSiteSession: FirSession,
|
||||
override val name: Name,
|
||||
override val isVar: Boolean,
|
||||
override val symbol: FirAccessorSymbol,
|
||||
|
||||
+2
-2
@@ -28,8 +28,8 @@ class FirSyntheticPropertyAccessor(
|
||||
override val source: FirSourceElement?
|
||||
get() = delegate.source
|
||||
|
||||
override val session: FirSession
|
||||
get() = delegate.session
|
||||
override val declarationSiteSession: FirSession
|
||||
get() = delegate.declarationSiteSession
|
||||
|
||||
override val origin: FirDeclarationOrigin
|
||||
get() = FirDeclarationOrigin.Synthetic
|
||||
|
||||
@@ -266,7 +266,7 @@ abstract class AbstractFirDiagnosticsTest : AbstractFirBaseDiagnosticsTest() {
|
||||
val collectors = mutableMapOf<FirSession, AbstractDiagnosticCollector>()
|
||||
val result = mutableMapOf<FirFile, List<FirDiagnostic<*>>>()
|
||||
for (firFile in firFiles) {
|
||||
val session = firFile.session
|
||||
val session = firFile.declarationSiteSession
|
||||
val collector = collectors.computeIfAbsent(session) { createCollector(session) }
|
||||
result[firFile] = collector.collectDiagnostics(firFile).toList()
|
||||
}
|
||||
|
||||
@@ -35,7 +35,7 @@ import kotlin.system.measureNanoTime
|
||||
|
||||
|
||||
fun checkFirProvidersConsistency(firFiles: List<FirFile>) {
|
||||
for ((session, files) in firFiles.groupBy { it.session }) {
|
||||
for ((session, files) in firFiles.groupBy { it.declarationSiteSession }) {
|
||||
val provider = session.firProvider as FirProviderImpl
|
||||
provider.ensureConsistent(files)
|
||||
}
|
||||
|
||||
+2
-2
@@ -316,10 +316,10 @@ class FirVisualizer(private val firFile: FirFile) : BaseRenderer() {
|
||||
}
|
||||
|
||||
inner class FirRendererForVisualizer : FirVisitor<Unit, StringBuilder>() {
|
||||
private val session = firFile.session
|
||||
private val session = firFile.declarationSiteSession
|
||||
private val filePackage = firFile.packageFqName.toString()
|
||||
private val filePackageWithSlash = filePackage.replace(".", "/")
|
||||
private val symbolProvider = firFile.session.symbolProvider
|
||||
private val symbolProvider = firFile.declarationSiteSession.symbolProvider
|
||||
|
||||
private fun ConeTypeProjection.tryToRenderConeAsFunctionType(): String {
|
||||
if (this !is ConeKotlinType) return localTypeRenderer()
|
||||
|
||||
+4
-4
@@ -115,7 +115,7 @@ internal class FirModuleResolveStateImpl(
|
||||
sessionProvider.getModuleCache(ktDeclaration.getModuleInfo() as ModuleSourceInfo)
|
||||
)
|
||||
if (container.resolvePhase < FirResolvePhase.BODY_RESOLVE) {
|
||||
val cache = (container.session as FirIdeSourcesSession).cache
|
||||
val cache = (container.declarationSiteSession as FirIdeSourcesSession).cache
|
||||
firLazyDeclarationResolver.lazyResolveDeclaration(
|
||||
container,
|
||||
cache,
|
||||
@@ -142,7 +142,7 @@ internal class FirModuleResolveStateImpl(
|
||||
}
|
||||
|
||||
override fun <D : FirDeclaration> resolvedFirToPhase(declaration: D, toPhase: FirResolvePhase): D {
|
||||
val fileCache = when (val session = declaration.session) {
|
||||
val fileCache = when (val session = declaration.declarationSiteSession) {
|
||||
is FirIdeSourcesSession -> session.cache
|
||||
else -> return declaration
|
||||
}
|
||||
@@ -165,7 +165,7 @@ internal class FirModuleResolveStateImpl(
|
||||
firDeclaration,
|
||||
rootModuleSession.cache,
|
||||
containerFirFile,
|
||||
containerFirFile.session.firIdeProvider,
|
||||
containerFirFile.declarationSiteSession.firIdeProvider,
|
||||
fromPhase = firDeclaration.resolvePhase,
|
||||
toPhase = FirResolvePhase.BODY_RESOLVE,
|
||||
towerDataContextCollector = collector,
|
||||
@@ -180,4 +180,4 @@ internal class FirModuleResolveStateImpl(
|
||||
override fun getTowerDataContextForElement(element: KtElement): FirTowerDataContext? {
|
||||
return collector.getClosestAvailableParentContext(element)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -63,7 +63,7 @@ internal class FirPhaseRunner {
|
||||
}
|
||||
|
||||
private fun runPhaseWithoutLock(firFile: FirFile, phase: FirResolvePhase, scopeSession: ScopeSession) {
|
||||
val phaseProcessor = phase.createTransformerBasedProcessorByPhase(firFile.session, scopeSession)
|
||||
val phaseProcessor = phase.createTransformerBasedProcessorByPhase(firFile.declarationSiteSession, scopeSession)
|
||||
executeWithoutPCE {
|
||||
FirLazyBodiesCalculator.calculateLazyBodiesIfPhaseRequires(firFile, phase)
|
||||
phaseProcessor.processFile(firFile)
|
||||
@@ -91,4 +91,4 @@ internal fun FirResolvePhase.createTransformerBasedProcessorByPhase(
|
||||
FirResolvePhase.IMPLICIT_TYPES_BODY_RESOLVE -> FirImplicitTypeBodyResolveProcessor(session, scopeSession)
|
||||
FirResolvePhase.BODY_RESOLVE -> FirBodyResolveProcessor(session, scopeSession)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -28,7 +28,7 @@ internal class IdeFirPhaseManager(
|
||||
try {
|
||||
lazyDeclarationResolver.lazyResolveDeclaration(fir, cache, requiredPhase, checkPCE = true)
|
||||
} catch (e: Throwable) {
|
||||
sessionInvalidator.invalidate(fir.session)
|
||||
sessionInvalidator.invalidate(fir.declarationSiteSession)
|
||||
throw e
|
||||
}
|
||||
}
|
||||
|
||||
+5
-5
@@ -28,10 +28,10 @@ class FirDeclarationDesignation(
|
||||
|
||||
object DeclarationDesignationCollector {
|
||||
fun collectDesignation(declaration: FirDeclaration): FirDeclarationDesignation {
|
||||
val firProvider = declaration.session.firProvider
|
||||
val firProvider = declaration.declarationSiteSession.firProvider
|
||||
|
||||
val containingClass = when (declaration) {
|
||||
is FirCallableDeclaration<*> -> declaration.containingClass()?.toFirRegularClass(declaration.session)
|
||||
is FirCallableDeclaration<*> -> declaration.containingClass()?.toFirRegularClass(declaration.declarationSiteSession)
|
||||
is FirClassLikeDeclaration<*> -> declaration.symbol.classId.outerClassId?.let(firProvider::getFirClassifierByFqName)
|
||||
else -> error("Invalid declaration ${declaration.renderWithType()}")
|
||||
} ?: return FirDeclarationDesignation(emptyList(), declaration, isLocalDesignation = false)
|
||||
@@ -54,7 +54,7 @@ object DeclarationDesignationCollector {
|
||||
|
||||
private fun FirRegularClass.collectForNonLocal(): List<FirClassLikeDeclaration<*>> {
|
||||
require(!isLocal)
|
||||
val firProvider = session.firProvider
|
||||
val firProvider = declarationSiteSession.firProvider
|
||||
var containingClassId = classId.outerClassId
|
||||
val designation = mutableListOf<FirClassLikeDeclaration<*>>(this)
|
||||
while (containingClassId != null) {
|
||||
@@ -70,7 +70,7 @@ object DeclarationDesignationCollector {
|
||||
var containingClassLookUp = containingClassForLocal()
|
||||
val designation = mutableListOf<FirClassLikeDeclaration<*>>(this)
|
||||
while (containingClassLookUp != null && containingClassLookUp.classId.isLocal) {
|
||||
val currentClass = containingClassLookUp.toFirRegularClass(session) ?: break
|
||||
val currentClass = containingClassLookUp.toFirRegularClass(declarationSiteSession) ?: break
|
||||
designation.add(currentClass)
|
||||
containingClassLookUp = currentClass.containingClassForLocal()
|
||||
}
|
||||
@@ -80,4 +80,4 @@ object DeclarationDesignationCollector {
|
||||
|
||||
|
||||
fun FirDeclaration.collectDesignation(): FirDeclarationDesignation =
|
||||
DeclarationDesignationCollector.collectDesignation(this)
|
||||
DeclarationDesignationCollector.collectDesignation(this)
|
||||
|
||||
+2
-2
@@ -43,7 +43,7 @@ abstract class FirModuleResolveState {
|
||||
|
||||
internal inline fun <D : FirDeclaration, R> withLock(declaration: D, declarationLockType: DeclarationLockType, action: (D) -> R): R {
|
||||
val originalDeclaration = (declaration as? FirCallableDeclaration<*>)?.unwrapFakeOverrides() ?: declaration
|
||||
val session = originalDeclaration.session
|
||||
val session = originalDeclaration.declarationSiteSession
|
||||
return when {
|
||||
originalDeclaration.origin == FirDeclarationOrigin.Source
|
||||
&& session is FirIdeSourcesSession
|
||||
@@ -93,4 +93,4 @@ abstract class FirModuleResolveState {
|
||||
}
|
||||
|
||||
fun FirModuleResolveState.getTowerDataContextUnsafe(element: KtElement): FirTowerDataContext =
|
||||
getTowerDataContextForElement(element) ?: error("No context for ${element.getElementTextInContext()}")
|
||||
getTowerDataContextForElement(element) ?: error("No context for ${element.getElementTextInContext()}")
|
||||
|
||||
+3
-3
@@ -31,7 +31,7 @@ internal class SingleNonLocalDeclarationDiagnosticRetriever(
|
||||
collector: FileStructureElementDiagnosticsCollector,
|
||||
lockProvider: LockProvider<FirFile>
|
||||
): FileStructureElementDiagnosticList {
|
||||
val sessionHolder = SessionHolderImpl.createWithEmptyScopeSession(firFile.session)
|
||||
val sessionHolder = SessionHolderImpl.createWithEmptyScopeSession(firFile.declarationSiteSession)
|
||||
val context = lockProvider.withReadLock(firFile) {
|
||||
PersistenceContextCollector.collectContext(sessionHolder, firFile, structureElementDeclaration)
|
||||
}
|
||||
@@ -105,7 +105,7 @@ internal object FileDiagnosticRetriever : FileStructureElementDiagnosticRetrieve
|
||||
firFile: FirFile,
|
||||
components: List<AbstractDiagnosticCollectorComponent>
|
||||
) : FirIdeDiagnosticVisitor(
|
||||
PersistentCheckerContextFactory.createEmptyPersistenceCheckerContext(SessionHolderImpl.createWithEmptyScopeSession(firFile.session)),
|
||||
PersistentCheckerContextFactory.createEmptyPersistenceCheckerContext(SessionHolderImpl.createWithEmptyScopeSession(firFile.declarationSiteSession)),
|
||||
components,
|
||||
) {
|
||||
override fun visitFile(file: FirFile, data: Nothing?) {
|
||||
@@ -118,4 +118,4 @@ internal object FileDiagnosticRetriever : FileStructureElementDiagnosticRetrieve
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+2
-2
@@ -21,11 +21,11 @@ internal class FileStructureElementDiagnosticsCollector private constructor(priv
|
||||
createVisitor: (components: List<AbstractDiagnosticCollectorComponent>) -> CheckerRunningDiagnosticCollectorVisitor,
|
||||
): FileStructureElementDiagnosticList =
|
||||
FirIdeStructureElementDiagnosticsCollector(
|
||||
firDeclaration.session,
|
||||
firDeclaration.declarationSiteSession,
|
||||
createVisitor,
|
||||
useExtendedCheckers,
|
||||
).let { collector ->
|
||||
collector.collectDiagnostics(firDeclaration)
|
||||
FileStructureElementDiagnosticList(collector.result)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+1
-1
@@ -30,7 +30,7 @@ internal class FileStructure(
|
||||
private val moduleFileCache: ModuleFileCache,
|
||||
private val collector: FirTowerDataContextCollector
|
||||
) {
|
||||
private val firIdeProvider = firFile.session.firIdeProvider
|
||||
private val firIdeProvider = firFile.declarationSiteSession.firIdeProvider
|
||||
|
||||
private val structureElements = ConcurrentHashMap<KtAnnotated, FileStructureElement>()
|
||||
|
||||
|
||||
+2
-2
@@ -31,7 +31,7 @@ internal object FileStructureUtil {
|
||||
} else {
|
||||
val classLikeLookupTag = from.containingClass()
|
||||
?: error("Class name should not be null for non-top-level & non-local declarations, but was null for\n${from.render()}")
|
||||
val containingClass = classLikeLookupTag.toSymbol(firFile.session)?.fir as FirRegularClass
|
||||
val containingClass = classLikeLookupTag.toSymbol(firFile.declarationSiteSession)?.fir as FirRegularClass
|
||||
containingClass.declarations as MutableList<FirDeclaration>
|
||||
}
|
||||
declarations.replaceFirst(from, to)
|
||||
@@ -52,4 +52,4 @@ internal object FileStructureUtil {
|
||||
throw e
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user