Add option for skipping calculating all names for optimizing reasons in LazyImportScope
This commit is contained in:
@@ -52,6 +52,7 @@ import org.jetbrains.kotlin.resolve.jvm.modules.JavaModuleResolver
|
||||
import org.jetbrains.kotlin.resolve.jvm.multiplatform.OptionalAnnotationPackageFragmentProvider
|
||||
import org.jetbrains.kotlin.resolve.jvm.platform.JvmPlatformAnalyzerServices
|
||||
import org.jetbrains.kotlin.resolve.lazy.declarations.DeclarationProviderFactory
|
||||
import org.jetbrains.kotlin.resolve.scopes.optimization.OptimizingOptions
|
||||
|
||||
fun createContainerForLazyResolveWithJava(
|
||||
jvmPlatform: TargetPlatform,
|
||||
@@ -71,11 +72,12 @@ fun createContainerForLazyResolveWithJava(
|
||||
configureJavaClassFinder: (StorageComponentContainer.() -> Unit)? = null,
|
||||
javaClassTracker: JavaClassesTracker? = null,
|
||||
implicitsResolutionFilter: ImplicitsExtensionsResolutionFilter? = null,
|
||||
sealedInheritorsProvider: SealedClassInheritorsProvider = CliSealedClassInheritorsProvider
|
||||
sealedInheritorsProvider: SealedClassInheritorsProvider = CliSealedClassInheritorsProvider,
|
||||
optimizingOptions: OptimizingOptions? = null,
|
||||
): StorageComponentContainer = createContainer("LazyResolveWithJava", JvmPlatformAnalyzerServices) {
|
||||
configureModule(
|
||||
moduleContext, jvmPlatform, JvmPlatformAnalyzerServices, bindingTrace, languageVersionSettings,
|
||||
sealedInheritorsProvider
|
||||
sealedInheritorsProvider, optimizingOptions
|
||||
)
|
||||
|
||||
configureIncrementalCompilation(lookupTracker, expectActualTracker, inlineConstTracker, enumWhenTracker)
|
||||
|
||||
+5
-2
@@ -40,6 +40,7 @@ import org.jetbrains.kotlin.resolve.TargetEnvironment
|
||||
import org.jetbrains.kotlin.resolve.jvm.extensions.PackageFragmentProviderExtension
|
||||
import org.jetbrains.kotlin.resolve.lazy.ResolveSession
|
||||
import org.jetbrains.kotlin.resolve.lazy.declarations.DeclarationProviderFactoryService
|
||||
import org.jetbrains.kotlin.resolve.scopes.optimization.OptimizingOptions
|
||||
import org.jetbrains.kotlin.utils.addIfNotNull
|
||||
|
||||
class JvmPlatformParameters(
|
||||
@@ -62,7 +63,8 @@ class JvmResolverForModuleFactory(
|
||||
moduleContent: ModuleContent<M>,
|
||||
resolverForProject: ResolverForProject<M>,
|
||||
languageVersionSettings: LanguageVersionSettings,
|
||||
sealedInheritorsProvider: SealedClassInheritorsProvider
|
||||
sealedInheritorsProvider: SealedClassInheritorsProvider,
|
||||
resolveOptimizingOptions: OptimizingOptions?
|
||||
): ResolverForModule {
|
||||
val (moduleInfo, syntheticFiles, moduleContentScope) = moduleContent
|
||||
val project = moduleContext.project
|
||||
@@ -119,7 +121,8 @@ class JvmResolverForModuleFactory(
|
||||
packagePartProvider,
|
||||
languageVersionSettings,
|
||||
sealedInheritorsProvider = sealedInheritorsProvider,
|
||||
useBuiltInsProvider = platformParameters.useBuiltinsProviderForModule(moduleInfo)
|
||||
useBuiltInsProvider = platformParameters.useBuiltinsProviderForModule(moduleInfo),
|
||||
optimizingOptions = resolveOptimizingOptions,
|
||||
)
|
||||
|
||||
val providersForModule = arrayListOf(
|
||||
|
||||
Reference in New Issue
Block a user