[FIR] Don't register FirJavaElementFinder for common session

This commit is contained in:
Dmitriy Novozhilov
2022-02-15 17:21:50 +03:00
committed by teamcity
parent b47cc86c57
commit 44bfb6fde8
5 changed files with 17 additions and 5 deletions
@@ -85,6 +85,7 @@ object FirSessionFactory {
lookupTracker: LookupTracker?,
providerAndScopeForIncrementalCompilation: ProviderAndScopeForIncrementalCompilation?,
extensionRegistrars: List<FirExtensionRegistrar>,
needRegisterJavaElementFinder: Boolean,
dependenciesConfigurator: DependencyListForCliModule.Builder.() -> Unit = {},
noinline sessionConfigurator: FirSessionConfigurator.() -> Unit = {},
): FirSession {
@@ -117,6 +118,7 @@ object FirSessionFactory {
extensionRegistrars,
languageVersionSettings = languageVersionSettings,
lookupTracker = lookupTracker,
needRegisterJavaElementFinder,
init = sessionConfigurator
)
}
@@ -130,6 +132,7 @@ object FirSessionFactory {
extensionRegistrars: List<FirExtensionRegistrar>,
languageVersionSettings: LanguageVersionSettings = LanguageVersionSettingsImpl.DEFAULT,
lookupTracker: LookupTracker? = null,
needRegisterJavaElementFinder: Boolean,
init: FirSessionConfigurator.() -> Unit = {}
): FirSession {
return FirCliSession(sessionProvider, FirSession.Kind.Source).apply session@{
@@ -191,8 +194,9 @@ object FirSessionFactory {
FirDependenciesSymbolProvider::class,
dependenciesSymbolProvider
)
projectEnvironment.registerAsJavaElementFinder(this)
if (needRegisterJavaElementFinder) {
projectEnvironment.registerAsJavaElementFinder(this)
}
}
}