Rename JvmBuiltInsSettings -> JvmBuiltInsCustomizer

This commit is contained in:
Denis.Zharkov
2020-12-22 17:25:00 +03:00
parent 70ae756083
commit 5a8dc00a0d
5 changed files with 11 additions and 10 deletions
@@ -28,7 +28,6 @@ import org.jetbrains.kotlin.descriptors.ModuleDescriptor
import org.jetbrains.kotlin.frontend.di.configureIncrementalCompilation
import org.jetbrains.kotlin.frontend.di.configureModule
import org.jetbrains.kotlin.frontend.di.configureStandardResolveComponents
import org.jetbrains.kotlin.idea.MainFunctionDetector
import org.jetbrains.kotlin.incremental.components.ExpectActualTracker
import org.jetbrains.kotlin.incremental.components.LookupTracker
import org.jetbrains.kotlin.load.java.AbstractJavaClassFinder
@@ -127,7 +126,7 @@ fun StorageComponentContainer.configureJavaSpecificComponents(
useInstance(languageVersionSettings.getFlag(JvmAnalysisFlags.javaTypeEnhancementState))
if (useBuiltInsProvider) {
useInstance((moduleContext.module.builtIns as JvmBuiltIns).settings)
useInstance((moduleContext.module.builtIns as JvmBuiltIns).customizer)
useImpl<JvmBuiltInsPackageFragmentProvider>()
}
useImpl<OptionalAnnotationPackageFragmentProvider>()
@@ -63,8 +63,8 @@ class JvmBuiltIns(storageManager: StorageManager, kind: Kind) : KotlinBuiltIns(s
this.isAdditionalBuiltInsFeatureSupported = isAdditionalBuiltInsFeatureSupported
}
val settings: JvmBuiltInsSettings by storageManager.createLazyValue {
JvmBuiltInsSettings(
val customizer: JvmBuiltInsCustomizer by storageManager.createLazyValue {
JvmBuiltInsCustomizer(
builtInsModule, storageManager,
{ ownerModuleDescriptor.sure { "JvmBuiltins has not been initialized properly" } },
{
@@ -83,9 +83,9 @@ class JvmBuiltIns(storageManager: StorageManager, kind: Kind) : KotlinBuiltIns(s
}
}
override fun getPlatformDependentDeclarationFilter(): PlatformDependentDeclarationFilter = settings
override fun getPlatformDependentDeclarationFilter(): PlatformDependentDeclarationFilter = customizer
override fun getAdditionalClassPartsProvider(): AdditionalClassPartsProvider = settings
override fun getAdditionalClassPartsProvider(): AdditionalClassPartsProvider = customizer
override fun getClassDescriptorFactories() =
super.getClassDescriptorFactories() + JvmBuiltInClassDescriptorFactory(storageManager, builtInsModule)
@@ -45,7 +45,9 @@ import org.jetbrains.kotlin.utils.DFS
import org.jetbrains.kotlin.utils.SmartSet
import java.util.*
open class JvmBuiltInsSettings(
// This class is worth splitting into two implementations of AdditionalClassPartsProvider and PlatformDependentDeclarationFilter
// But currently, they shares a piece of code and probably it's better to postpone it
class JvmBuiltInsCustomizer(
private val moduleDescriptor: ModuleDescriptor,
storageManager: StorageManager,
deferredOwnerModuleDescriptor: () -> ModuleDescriptor,
@@ -53,8 +53,8 @@ class DeserializationComponentsForJava(
storageManager, moduleDescriptor, configuration, classDataFinder, annotationAndConstantLoader, packageFragmentProvider,
LocalClassifierTypeSettings.Default, errorReporter, lookupTracker, JavaFlexibleTypeDeserializer,
emptyList(), notFoundClasses, contractDeserializer,
additionalClassPartsProvider = jvmBuiltIns?.settings ?: AdditionalClassPartsProvider.None,
platformDependentDeclarationFilter = jvmBuiltIns?.settings ?: PlatformDependentDeclarationFilter.NoPlatformDependent,
additionalClassPartsProvider = jvmBuiltIns?.customizer ?: AdditionalClassPartsProvider.None,
platformDependentDeclarationFilter = jvmBuiltIns?.customizer ?: PlatformDependentDeclarationFilter.NoPlatformDependent,
extensionRegistryLite = JvmProtoBufUtil.EXTENSION_REGISTRY,
kotlinTypeChecker = kotlinTypeChecker, samConversionResolver = SamConversionResolverImpl(storageManager, emptyList())
)
@@ -85,7 +85,7 @@ class RuntimeModuleData private constructor(
// .kotlin_builtins files should be found by the same class loader that loaded stdlib classes
val stdlibClassLoader = Unit::class.java.classLoader
val builtinsProvider = JvmBuiltInsPackageFragmentProvider(
storageManager, ReflectKotlinClassFinder(stdlibClassLoader), module, notFoundClasses, builtIns.settings, builtIns.settings,
storageManager, ReflectKotlinClassFinder(stdlibClassLoader), module, notFoundClasses, builtIns.customizer, builtIns.customizer,
DeserializationConfiguration.Default, NewKotlinTypeChecker.Default, SamConversionResolverImpl(storageManager, emptyList())
)