FIR: hide construction of JavaSymbolProvider

This commit is contained in:
pyos
2021-09-13 14:02:08 +02:00
committed by TeamCityServer
parent 8ff79e002e
commit 3a80cb1808
7 changed files with 58 additions and 155 deletions
@@ -153,8 +153,7 @@ object FirSessionFactory {
kotlinScopeProvider,
it.packagePartProvider,
projectEnvironment.getKotlinClassFinder(it.scope),
projectEnvironment.getJavaClassFinder(it.scope),
projectEnvironment.getJavaSymbolProvider(this, moduleData, it.scope)
projectEnvironment.getJavaClassFinder(it.scope)
)
}
@@ -166,7 +165,7 @@ object FirSessionFactory {
listOfNotNull(
firProvider.symbolProvider,
symbolProviderForBinariesFromIncrementalCompilation,
JavaSymbolProviderWrapper(this, projectEnvironment.getJavaSymbolProvider(this, moduleData, scope)),
JavaSymbolProviderWrapper(this, moduleData, projectEnvironment.getJavaClassFinder(scope)),
dependenciesSymbolProvider,
)
)
@@ -214,8 +213,7 @@ object FirSessionFactory {
kotlinScopeProvider,
packagePartProvider,
projectEnvironment.getKotlinClassFinder(scope),
projectEnvironment.getJavaClassFinder(scope),
projectEnvironment.getJavaSymbolProvider(this, moduleDataProvider.allModuleData.last(), scope)
projectEnvironment.getJavaClassFinder(scope)
)
val builtinsModuleData = createModuleDataForBuiltins(
@@ -5,9 +5,7 @@
package org.jetbrains.kotlin.fir.session.environment
import org.jetbrains.kotlin.fir.FirModuleData
import org.jetbrains.kotlin.fir.FirSession
import org.jetbrains.kotlin.fir.java.JavaSymbolProvider
import org.jetbrains.kotlin.load.java.JavaClassFinder
import org.jetbrains.kotlin.load.kotlin.KotlinClassFinder
import org.jetbrains.kotlin.load.kotlin.PackagePartProvider
@@ -40,17 +38,10 @@ interface AbstractProjectFileSearchScope {
}
interface AbstractProjectEnvironment {
fun getKotlinClassFinder(fileSearchScope: AbstractProjectFileSearchScope): KotlinClassFinder
fun getJavaClassFinder(fileSearchScope: AbstractProjectFileSearchScope): JavaClassFinder
fun getJavaSymbolProvider(
firSession: FirSession,
baseModuleData: FirModuleData,
fileSearchScope: AbstractProjectFileSearchScope
): JavaSymbolProvider
fun getJavaModuleResolver(): JavaModuleResolver
fun getPackagePartProvider(fileSearchScope: AbstractProjectFileSearchScope): PackagePartProvider