diff --git a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/LLFirResolveSessionDepended.kt b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/LLFirResolveSessionDepended.kt index ba23eb6c2dd..b108aa91898 100644 --- a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/LLFirResolveSessionDepended.kt +++ b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/LLFirResolveSessionDepended.kt @@ -40,7 +40,6 @@ internal class LLFirResolveSessionDepended( override val project: Project get() = originalFirResolveSession.project override val useSiteKtModule: KtModule get() = originalFirResolveSession.useSiteKtModule override val useSiteFirSession get() = originalFirResolveSession.useSiteFirSession - override val isLibrarySession get() = false private val scopeSessionProviderCache = SoftCachedMap.create( project, diff --git a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/api/LLFirResolveSession.kt b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/api/LLFirResolveSession.kt index db777e6dbea..5829026f2e2 100644 --- a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/api/LLFirResolveSession.kt +++ b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/api/LLFirResolveSession.kt @@ -31,8 +31,6 @@ abstract class LLFirResolveSession { abstract val useSiteKtModule: KtModule - abstract val isLibrarySession: Boolean - abstract fun getSessionFor(module: KtModule): LLFirSession abstract fun getScopeSessionFor(firSession: FirSession): ScopeSession diff --git a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/state/LLFirLibraryOrLibrarySourceResolvableResolveSession.kt b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/state/LLFirLibraryOrLibrarySourceResolvableResolveSession.kt index 2db8a6ff35b..56689b63015 100644 --- a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/state/LLFirLibraryOrLibrarySourceResolvableResolveSession.kt +++ b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/state/LLFirLibraryOrLibrarySourceResolvableResolveSession.kt @@ -22,9 +22,6 @@ internal class LLFirLibraryOrLibrarySourceResolvableResolveSession( override val useSiteKtModule: KtModule, sessionProvider: LLFirSessionProvider, ) : LLFirResolvableResolveSession(sessionProvider) { - override val isLibrarySession: Boolean - get() = true - override fun getDiagnostics(element: KtElement, filter: DiagnosticCheckerFilter): List = emptyList() diff --git a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/state/LLFirNotUnderContentRootResolveSession.kt b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/state/LLFirNotUnderContentRootResolveSession.kt index 35d2eca9597..f26403cf6fa 100644 --- a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/state/LLFirNotUnderContentRootResolveSession.kt +++ b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/state/LLFirNotUnderContentRootResolveSession.kt @@ -20,9 +20,6 @@ internal class LLFirNotUnderContentRootResolveSession( override val useSiteKtModule: KtModule, sessionProvider: LLFirSessionProvider, ) : LLFirResolvableResolveSession(sessionProvider) { - override val isLibrarySession: Boolean - get() = false - override fun getDiagnostics(element: KtElement, filter: DiagnosticCheckerFilter): List = emptyList() diff --git a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/state/LLFirSourceResolveSession.kt b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/state/LLFirSourceResolveSession.kt index cd724338cf5..6e2de3cbfca 100644 --- a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/state/LLFirSourceResolveSession.kt +++ b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/state/LLFirSourceResolveSession.kt @@ -24,9 +24,6 @@ internal class LLFirSourceResolveSession( override val useSiteKtModule: KtModule, sessionProvider: LLFirSessionProvider, ) : LLFirResolvableResolveSession(sessionProvider) { - override val isLibrarySession: Boolean - get() = false - override fun getDiagnostics(element: KtElement, filter: DiagnosticCheckerFilter): List { val moduleComponents = getModuleComponentsForElement(element) return moduleComponents.diagnosticsCollector.getDiagnosticsFor(element, filter) diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/AbstractFirLazyDeclarationResolveTest.kt b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/AbstractFirLazyDeclarationResolveTest.kt index d66c789531b..1dd01283506 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/AbstractFirLazyDeclarationResolveTest.kt +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/AbstractFirLazyDeclarationResolveTest.kt @@ -65,7 +65,7 @@ abstract class AbstractFirLazyDeclarationResolveTest : AbstractLowLevelApiSingle errorExpressionRenderer = FirErrorExpressionExtendedRenderer(), ) resolveWithClearCaches(ktFile) { firResolveSession -> - check(!firResolveSession.isLibrarySession) + check(firResolveSession.isSourceSession) val declarationToResolve = firResolveSession .getOrBuildFirFile(ktFile) .findResolveMe() @@ -79,7 +79,7 @@ abstract class AbstractFirLazyDeclarationResolveTest : AbstractLowLevelApiSingle } resolveWithClearCaches(ktFile) { llSession -> - check(!llSession.isLibrarySession) + check(llSession.isSourceSession) val firFile = llSession.getOrBuildFirFile(ktFile) firFile.lazyResolveToPhase(FirResolvePhase.BODY_RESOLVE) resultBuilder.append("\nFILE RAW TO BODY:\n") diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/AbstractFirContextCollectionTest.kt b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/AbstractFirContextCollectionTest.kt index 209907c4543..f3e95056d3e 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/AbstractFirContextCollectionTest.kt +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/diagnostic/AbstractFirContextCollectionTest.kt @@ -11,7 +11,6 @@ import org.jetbrains.kotlin.fir.declarations.FirDeclaration import org.jetbrains.kotlin.fir.declarations.FirFile import org.jetbrains.kotlin.fir.resolve.ImplicitReceiverStack import org.jetbrains.kotlin.fir.resolve.SessionHolderImpl -import org.jetbrains.kotlin.analysis.low.level.api.fir.state.LLFirSourceResolveSession import org.jetbrains.kotlin.analysis.low.level.api.fir.api.DiagnosticCheckerFilter import org.jetbrains.kotlin.analysis.low.level.api.fir.api.getDiagnostics import org.jetbrains.kotlin.analysis.low.level.api.fir.api.getOrBuildFirFile @@ -23,6 +22,7 @@ import org.jetbrains.kotlin.analysis.low.level.api.fir.file.structure.FileStruct import org.jetbrains.kotlin.analysis.low.level.api.fir.file.structure.NonReanalyzableDeclarationStructureElement import org.jetbrains.kotlin.analysis.low.level.api.fir.file.structure.ReanalyzableStructureElement import org.jetbrains.kotlin.analysis.low.level.api.fir.file.structure.RootStructureElement +import org.jetbrains.kotlin.analysis.low.level.api.fir.isSourceSession import org.jetbrains.kotlin.analysis.low.level.api.fir.name import org.jetbrains.kotlin.analysis.low.level.api.fir.resolveWithClearCaches import org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirResolvableModuleSession @@ -46,7 +46,7 @@ abstract class AbstractFirContextCollectionTest : AbstractLowLevelApiSingleFileT register(BeforeElementDiagnosticCollectionHandler::class, handler) } ) { firResolveSession -> - check(!firResolveSession.isLibrarySession) + check(firResolveSession.isSourceSession) val session = firResolveSession.getSessionFor(ktFile.getKtModule()) as LLFirResolvableModuleSession val fileStructureCache = session.moduleComponents.fileStructureCache diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/file/structure/AbstractFileStructureTest.kt b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/file/structure/AbstractFileStructureTest.kt index fa18f9a08ce..baf45a96336 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/file/structure/AbstractFileStructureTest.kt +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/file/structure/AbstractFileStructureTest.kt @@ -11,8 +11,8 @@ import com.intellij.psi.PsiElementVisitor import com.intellij.psi.PsiErrorElement import com.intellij.psi.impl.source.tree.LeafPsiElement import com.intellij.psi.util.PsiTreeUtil -import org.jetbrains.kotlin.analysis.low.level.api.fir.state.LLFirSourceResolveSession import org.jetbrains.kotlin.analysis.low.level.api.fir.api.getFirResolveSession +import org.jetbrains.kotlin.analysis.low.level.api.fir.isSourceSession import org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirResolvableModuleSession import org.jetbrains.kotlin.analysis.low.level.api.fir.test.base.AbstractLowLevelApiSingleFileTest import org.jetbrains.kotlin.analysis.low.level.api.fir.test.configurators.AnalysisApiFirOutOfContentRootTestConfigurator @@ -100,7 +100,7 @@ abstract class AbstractFileStructureTest : AbstractLowLevelApiSingleFileTest() { private fun KtFile.getFileStructure(): FileStructure { val moduleFirResolveSession = getFirResolveSession() - check(!moduleFirResolveSession.isLibrarySession) + check(moduleFirResolveSession.isSourceSession) val session = moduleFirResolveSession.getSessionFor(getKtModule()) as LLFirResolvableModuleSession return session.moduleComponents.fileStructureCache.getFileStructure(this) } diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/firTestUtils.kt b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/firTestUtils.kt index ac11f019cbe..10b8623c859 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/firTestUtils.kt +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/firTestUtils.kt @@ -7,6 +7,8 @@ package org.jetbrains.kotlin.analysis.low.level.api.fir import org.jetbrains.kotlin.analysis.low.level.api.fir.api.LLFirResolveSession import org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirSession +import org.jetbrains.kotlin.analysis.low.level.api.fir.state.LLFirNotUnderContentRootResolveSession +import org.jetbrains.kotlin.analysis.low.level.api.fir.state.LLFirSourceResolveSession import org.jetbrains.kotlin.analysis.project.structure.getKtModule import org.jetbrains.kotlin.fir.FirElement import org.jetbrains.kotlin.fir.declarations.FirDeclaration @@ -43,3 +45,11 @@ internal inline fun resolveWithClearCaches( val firResolveSession = createFirResolveSessionForNoCaching(context.getKtModule(project), project, configureSession) return action(firResolveSession) } + +internal val LLFirResolveSession.isSourceSession: Boolean + get() { + return when (this) { + is LLFirSourceResolveSession, is LLFirNotUnderContentRootResolveSession -> true + else -> false + } + } \ No newline at end of file