[FIR] Don't create FirDependenciesSymbolProvider without need
This commit is contained in:
committed by
Space Team
parent
9c6df5313a
commit
4d89eddbe8
+2
-6
@@ -91,7 +91,7 @@ abstract class FirAbstractSessionFactory {
|
|||||||
createProviders: (
|
createProviders: (
|
||||||
FirSession, FirKotlinScopeProvider, FirSymbolProvider,
|
FirSession, FirKotlinScopeProvider, FirSymbolProvider,
|
||||||
FirSwitchableExtensionDeclarationsSymbolProvider?,
|
FirSwitchableExtensionDeclarationsSymbolProvider?,
|
||||||
FirDependenciesSymbolProviderImpl
|
FirDependenciesSymbolProvider
|
||||||
) -> List<FirSymbolProvider>
|
) -> List<FirSymbolProvider>
|
||||||
): FirSession {
|
): FirSession {
|
||||||
return FirCliSession(sessionProvider, FirSession.Kind.Source).apply session@{
|
return FirCliSession(sessionProvider, FirSession.Kind.Source).apply session@{
|
||||||
@@ -129,11 +129,7 @@ abstract class FirAbstractSessionFactory {
|
|||||||
register(FirSymbolProvider::class, FirCompositeSymbolProvider(this, providers))
|
register(FirSymbolProvider::class, FirCompositeSymbolProvider(this, providers))
|
||||||
|
|
||||||
generatedSymbolsProvider?.let { register(FirSwitchableExtensionDeclarationsSymbolProvider::class, it) }
|
generatedSymbolsProvider?.let { register(FirSwitchableExtensionDeclarationsSymbolProvider::class, it) }
|
||||||
|
register(FirDependenciesSymbolProvider::class, dependenciesSymbolProvider)
|
||||||
register(
|
|
||||||
FirDependenciesSymbolProvider::class,
|
|
||||||
dependenciesSymbolProvider
|
|
||||||
)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -115,7 +115,6 @@ object FirSessionFactory : FirAbstractSessionFactory() {
|
|||||||
),
|
),
|
||||||
FirBuiltinSymbolProvider(session, builtinsModuleData, kotlinScopeProvider),
|
FirBuiltinSymbolProvider(session, builtinsModuleData, kotlinScopeProvider),
|
||||||
FirCloneableSymbolProvider(session, builtinsModuleData, kotlinScopeProvider),
|
FirCloneableSymbolProvider(session, builtinsModuleData, kotlinScopeProvider),
|
||||||
FirDependenciesSymbolProviderImpl(session),
|
|
||||||
OptionalAnnotationClassesProvider(session, dependencyList.moduleDataProvider, kotlinScopeProvider, packagePartProvider)
|
OptionalAnnotationClassesProvider(session, dependencyList.moduleDataProvider, kotlinScopeProvider, packagePartProvider)
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|||||||
+2
-1
@@ -31,7 +31,8 @@ open class FirDependenciesSymbolProviderImpl(session: FirSession) : FirDependenc
|
|||||||
|
|
||||||
|
|
||||||
protected open val dependencyProviders by lazy {
|
protected open val dependencyProviders by lazy {
|
||||||
val moduleData = session.nullableModuleData ?: return@lazy emptyList()
|
val moduleData =
|
||||||
|
session.nullableModuleData ?: error("FirDependenciesSymbolProvider should not be created if there are no dependencies")
|
||||||
(moduleData.dependencies + moduleData.friendDependencies + moduleData.dependsOnDependencies)
|
(moduleData.dependencies + moduleData.friendDependencies + moduleData.dependsOnDependencies)
|
||||||
.mapNotNull { session.sessionProvider?.getSession(it) }
|
.mapNotNull { session.sessionProvider?.getSession(it) }
|
||||||
.sortedBy { it.kind }
|
.sortedBy { it.kind }
|
||||||
|
|||||||
-2
@@ -16,7 +16,6 @@ import org.jetbrains.kotlin.fir.java.FirProjectSessionProvider
|
|||||||
import org.jetbrains.kotlin.fir.resolve.calls.ConeCallConflictResolverFactory
|
import org.jetbrains.kotlin.fir.resolve.calls.ConeCallConflictResolverFactory
|
||||||
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirBuiltinSymbolProvider
|
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirBuiltinSymbolProvider
|
||||||
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirCloneableSymbolProvider
|
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirCloneableSymbolProvider
|
||||||
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirDependenciesSymbolProviderImpl
|
|
||||||
import org.jetbrains.kotlin.fir.scopes.FirKotlinScopeProvider
|
import org.jetbrains.kotlin.fir.scopes.FirKotlinScopeProvider
|
||||||
import org.jetbrains.kotlin.fir.scopes.FirPlatformClassMapper
|
import org.jetbrains.kotlin.fir.scopes.FirPlatformClassMapper
|
||||||
import org.jetbrains.kotlin.fir.session.FirAbstractSessionFactory
|
import org.jetbrains.kotlin.fir.session.FirAbstractSessionFactory
|
||||||
@@ -49,7 +48,6 @@ object FirJsSessionFactory : FirAbstractSessionFactory() {
|
|||||||
listOf(
|
listOf(
|
||||||
FirBuiltinSymbolProvider(session, builtinsModuleData, kotlinScopeProvider),
|
FirBuiltinSymbolProvider(session, builtinsModuleData, kotlinScopeProvider),
|
||||||
FirCloneableSymbolProvider(session, builtinsModuleData, kotlinScopeProvider),
|
FirCloneableSymbolProvider(session, builtinsModuleData, kotlinScopeProvider),
|
||||||
FirDependenciesSymbolProviderImpl(session),
|
|
||||||
) + resolveJsLibraries(module, testServices, configuration).map {
|
) + resolveJsLibraries(module, testServices, configuration).map {
|
||||||
KlibBasedSymbolProvider(session, moduleDataProvider, kotlinScopeProvider, it)
|
KlibBasedSymbolProvider(session, moduleDataProvider, kotlinScopeProvider, it)
|
||||||
}
|
}
|
||||||
|
|||||||
-2
@@ -14,7 +14,6 @@ import org.jetbrains.kotlin.fir.java.FirProjectSessionProvider
|
|||||||
import org.jetbrains.kotlin.fir.resolve.calls.ConeCallConflictResolverFactory
|
import org.jetbrains.kotlin.fir.resolve.calls.ConeCallConflictResolverFactory
|
||||||
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirBuiltinSymbolProvider
|
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirBuiltinSymbolProvider
|
||||||
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirCloneableSymbolProvider
|
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirCloneableSymbolProvider
|
||||||
import org.jetbrains.kotlin.fir.resolve.providers.impl.FirDependenciesSymbolProviderImpl
|
|
||||||
import org.jetbrains.kotlin.fir.scopes.FirKotlinScopeProvider
|
import org.jetbrains.kotlin.fir.scopes.FirKotlinScopeProvider
|
||||||
import org.jetbrains.kotlin.fir.scopes.FirPlatformClassMapper
|
import org.jetbrains.kotlin.fir.scopes.FirPlatformClassMapper
|
||||||
import org.jetbrains.kotlin.fir.session.FirAbstractSessionFactory
|
import org.jetbrains.kotlin.fir.session.FirAbstractSessionFactory
|
||||||
@@ -40,7 +39,6 @@ object FirNativeSessionFactory : FirAbstractSessionFactory() {
|
|||||||
listOf(
|
listOf(
|
||||||
FirBuiltinSymbolProvider(session, builtinsModuleData, kotlinScopeProvider),
|
FirBuiltinSymbolProvider(session, builtinsModuleData, kotlinScopeProvider),
|
||||||
FirCloneableSymbolProvider(session, builtinsModuleData, kotlinScopeProvider),
|
FirCloneableSymbolProvider(session, builtinsModuleData, kotlinScopeProvider),
|
||||||
FirDependenciesSymbolProviderImpl(session),
|
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user