diff --git a/compiler/frontend/src/org/jetbrains/kotlin/context/context.kt b/compiler/frontend/src/org/jetbrains/kotlin/context/context.kt index f5b054bd6b4..81780494858 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/context/context.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/context/context.kt @@ -22,7 +22,6 @@ import org.jetbrains.kotlin.descriptors.ModuleDescriptor import org.jetbrains.kotlin.descriptors.PackageFragmentProvider import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl import org.jetbrains.kotlin.name.Name -import org.jetbrains.kotlin.resolve.ImportPath import org.jetbrains.kotlin.resolve.TargetPlatform import org.jetbrains.kotlin.resolve.createModule import org.jetbrains.kotlin.storage.ExceptionTracker @@ -97,14 +96,9 @@ fun ModuleContext(module: ModuleDescriptor, project: Project): ModuleContext = fun GlobalContext.withProject(project: Project): ProjectContext = ProjectContextImpl(project, this) fun ProjectContext.withModule(module: ModuleDescriptor): ModuleContext = ModuleContextImpl(module, this) -fun ContextForNewModule( - project: Project, - moduleName: Name, - defaultImports: List, - builtIns: KotlinBuiltIns -): MutableModuleContext { +fun ContextForNewModule(project: Project, moduleName: Name, builtIns: KotlinBuiltIns): MutableModuleContext { val projectContext = ProjectContext(project) - val module = ModuleDescriptorImpl(moduleName, projectContext.storageManager, defaultImports, builtIns) + val module = ModuleDescriptorImpl(moduleName, projectContext.storageManager, builtIns) return MutableModuleContextImpl(module, projectContext) } diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/TargetPlatform.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/TargetPlatform.kt index 8bbf1a6c6d3..4c58909265c 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/TargetPlatform.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/TargetPlatform.kt @@ -110,7 +110,7 @@ fun TargetPlatform.createModule( storageManager: StorageManager, builtIns: KotlinBuiltIns, capabilities: Map, Any?> = emptyMap() -) = ModuleDescriptorImpl(name, storageManager, defaultImports, builtIns, capabilities) +) = ModuleDescriptorImpl(name, storageManager, builtIns, capabilities) fun createContainer(id: String, platform: TargetPlatform, init: StorageComponentContainer.() -> Unit) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/DefaultImportProvider.kt b/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/DefaultImportProvider.kt index e0c037b777d..7b66554147b 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/DefaultImportProvider.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/resolve/lazy/DefaultImportProvider.kt @@ -23,6 +23,7 @@ import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.name.isChildOf import org.jetbrains.kotlin.name.isSubpackageOf import org.jetbrains.kotlin.resolve.ImportPath +import org.jetbrains.kotlin.resolve.TargetPlatform import org.jetbrains.kotlin.resolve.descriptorUtil.fqNameSafe import org.jetbrains.kotlin.resolve.scopes.DescriptorKindFilter import org.jetbrains.kotlin.storage.StorageManager @@ -31,11 +32,11 @@ import org.jetbrains.kotlin.utils.addToStdlib.check class DefaultImportProvider( storageManager: StorageManager, - private val moduleDescriptor: ModuleDescriptor + moduleDescriptor: ModuleDescriptor, + private val targetPlatform: TargetPlatform ) { - // TODO: get rid of ModuleDescriptor#defaultImports val defaultImports: List - get() = moduleDescriptor.defaultImports + get() = targetPlatform.defaultImports val excludedImports: List by storageManager.createLazyValue { val packagesWithAliases = listOf(KotlinBuiltIns.BUILT_INS_PACKAGE_FQ_NAME, KotlinBuiltIns.TEXT_PACKAGE_FQ_NAME) diff --git a/compiler/tests-common/org/jetbrains/kotlin/test/KotlinTestUtils.java b/compiler/tests-common/org/jetbrains/kotlin/test/KotlinTestUtils.java index e4d5d104ac5..342c491b904 100644 --- a/compiler/tests-common/org/jetbrains/kotlin/test/KotlinTestUtils.java +++ b/compiler/tests-common/org/jetbrains/kotlin/test/KotlinTestUtils.java @@ -961,7 +961,7 @@ public class KotlinTestUtils { @NotNull public static ModuleDescriptorImpl createEmptyModule(@NotNull String name, @NotNull TargetPlatform platform, KotlinBuiltIns builtIns) { - return new ModuleDescriptorImpl(Name.special(name), LockBasedStorageManager.NO_LOCKS, platform.getDefaultImports(), builtIns); + return new ModuleDescriptorImpl(Name.special(name), LockBasedStorageManager.NO_LOCKS, builtIns); } @NotNull diff --git a/compiler/tests/org/jetbrains/kotlin/serialization/builtins/LoadBuiltinsTest.java b/compiler/tests/org/jetbrains/kotlin/serialization/builtins/LoadBuiltinsTest.java index 7fc7fef0042..f252796b243 100644 --- a/compiler/tests/org/jetbrains/kotlin/serialization/builtins/LoadBuiltinsTest.java +++ b/compiler/tests/org/jetbrains/kotlin/serialization/builtins/LoadBuiltinsTest.java @@ -37,7 +37,6 @@ import org.jetbrains.kotlin.renderer.DescriptorRenderer; import org.jetbrains.kotlin.renderer.DescriptorRendererModifier; import org.jetbrains.kotlin.renderer.DescriptorRendererOptions; import org.jetbrains.kotlin.renderer.OverrideRenderingPolicy; -import org.jetbrains.kotlin.resolve.ImportPath; import org.jetbrains.kotlin.resolve.lazy.LazyResolveTestUtilsKt; import org.jetbrains.kotlin.resolve.lazy.descriptors.LazyPackageDescriptor; import org.jetbrains.kotlin.serialization.deserialization.AdditionalClassPartsProvider; @@ -51,7 +50,6 @@ import org.jetbrains.kotlin.test.util.RecursiveDescriptorComparator; import java.io.File; import java.io.InputStream; -import java.util.Collections; import java.util.List; import java.util.regex.Pattern; @@ -109,9 +107,8 @@ public class LoadBuiltinsTest extends KotlinTestWithEnvironment { @NotNull private static PackageFragmentProvider createBuiltInsPackageFragmentProvider() { LockBasedStorageManager storageManager = new LockBasedStorageManager(); - ModuleDescriptorImpl builtInsModule = new ModuleDescriptorImpl( - KotlinBuiltIns.BUILTINS_MODULE_NAME, storageManager, Collections.emptyList(), DefaultBuiltIns.getInstance() - ); + ModuleDescriptorImpl builtInsModule = + new ModuleDescriptorImpl(KotlinBuiltIns.BUILTINS_MODULE_NAME, storageManager, DefaultBuiltIns.getInstance()); PackageFragmentProvider packageFragmentProvider = createBuiltInPackageFragmentProvider( storageManager, builtInsModule, BUILT_INS_PACKAGE_FQ_NAMES, diff --git a/core/descriptors.runtime/src/org/jetbrains/kotlin/load/kotlin/reflect/RuntimeModuleData.kt b/core/descriptors.runtime/src/org/jetbrains/kotlin/load/kotlin/reflect/RuntimeModuleData.kt index 3ccd4734ccd..ae71f8b0bc4 100644 --- a/core/descriptors.runtime/src/org/jetbrains/kotlin/load/kotlin/reflect/RuntimeModuleData.kt +++ b/core/descriptors.runtime/src/org/jetbrains/kotlin/load/kotlin/reflect/RuntimeModuleData.kt @@ -45,7 +45,7 @@ class RuntimeModuleData private constructor(val deserialization: Deserialization fun create(classLoader: ClassLoader): RuntimeModuleData { val storageManager = LockBasedStorageManager() val builtIns = JvmBuiltIns(storageManager) - val module = ModuleDescriptorImpl(Name.special(""), storageManager, emptyList(), builtIns) + val module = ModuleDescriptorImpl(Name.special(""), storageManager, builtIns) val reflectKotlinClassFinder = ReflectKotlinClassFinder(classLoader) val deserializedDescriptorResolver = DeserializedDescriptorResolver(RuntimeErrorReporter) diff --git a/core/descriptors/src/org/jetbrains/kotlin/builtins/KotlinBuiltIns.java b/core/descriptors/src/org/jetbrains/kotlin/builtins/KotlinBuiltIns.java index 44f9e6212ff..a9fe0918a98 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/builtins/KotlinBuiltIns.java +++ b/core/descriptors/src/org/jetbrains/kotlin/builtins/KotlinBuiltIns.java @@ -30,7 +30,6 @@ import org.jetbrains.kotlin.name.FqName; import org.jetbrains.kotlin.name.FqNameUnsafe; import org.jetbrains.kotlin.name.Name; import org.jetbrains.kotlin.resolve.DescriptorUtils; -import org.jetbrains.kotlin.resolve.ImportPath; import org.jetbrains.kotlin.resolve.scopes.MemberScope; import org.jetbrains.kotlin.serialization.deserialization.AdditionalClassPartsProvider; import org.jetbrains.kotlin.serialization.deserialization.PlatformDependentDeclarationFilter; @@ -82,7 +81,7 @@ public abstract class KotlinBuiltIns { protected KotlinBuiltIns(@NotNull StorageManager storageManager) { this.storageManager = storageManager; - builtInsModule = new ModuleDescriptorImpl(BUILTINS_MODULE_NAME, storageManager, Collections.emptyList(), this); + builtInsModule = new ModuleDescriptorImpl(BUILTINS_MODULE_NAME, storageManager, this); PackageFragmentProvider packageFragmentProvider = BuiltInsPackageFragmentProviderKt.createBuiltInPackageFragmentProvider( storageManager, builtInsModule, BUILT_INS_PACKAGE_FQ_NAMES, diff --git a/core/descriptors/src/org/jetbrains/kotlin/descriptors/ModuleDescriptor.kt b/core/descriptors/src/org/jetbrains/kotlin/descriptors/ModuleDescriptor.kt index e42c01b7a76..cf94e41f807 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/descriptors/ModuleDescriptor.kt +++ b/core/descriptors/src/org/jetbrains/kotlin/descriptors/ModuleDescriptor.kt @@ -19,7 +19,6 @@ package org.jetbrains.kotlin.descriptors import org.jetbrains.kotlin.builtins.KotlinBuiltIns import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.name.Name -import org.jetbrains.kotlin.resolve.ImportPath import org.jetbrains.kotlin.types.TypeSubstitutor interface ModuleDescriptor : DeclarationDescriptor { @@ -41,8 +40,6 @@ interface ModuleDescriptor : DeclarationDescriptor { fun getSubPackagesOf(fqName: FqName, nameFilter: (Name) -> Boolean): Collection - val defaultImports: List - /** * @return dependent modules in the same order in which this module depends on them. Does not include `this` */ diff --git a/core/descriptors/src/org/jetbrains/kotlin/descriptors/impl/ModuleDescriptorImpl.kt b/core/descriptors/src/org/jetbrains/kotlin/descriptors/impl/ModuleDescriptorImpl.kt index c03da82ece8..b57d4b49c15 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/descriptors/impl/ModuleDescriptorImpl.kt +++ b/core/descriptors/src/org/jetbrains/kotlin/descriptors/impl/ModuleDescriptorImpl.kt @@ -23,7 +23,6 @@ import org.jetbrains.kotlin.descriptors.PackageViewDescriptor import org.jetbrains.kotlin.descriptors.annotations.Annotations import org.jetbrains.kotlin.name.FqName import org.jetbrains.kotlin.name.Name -import org.jetbrains.kotlin.resolve.ImportPath import org.jetbrains.kotlin.storage.StorageManager import org.jetbrains.kotlin.utils.sure import java.lang.IllegalArgumentException @@ -31,7 +30,6 @@ import java.lang.IllegalArgumentException class ModuleDescriptorImpl @JvmOverloads constructor( moduleName: Name, private val storageManager: StorageManager, - override val defaultImports: List, override val builtIns: KotlinBuiltIns, private val capabilities: Map, Any?> = emptyMap() ) : DeclarationDescriptorImpl(Annotations.EMPTY, moduleName), ModuleDescriptor { diff --git a/core/descriptors/src/org/jetbrains/kotlin/types/ErrorUtils.java b/core/descriptors/src/org/jetbrains/kotlin/types/ErrorUtils.java index 9def392d308..f7c1a6a3aed 100644 --- a/core/descriptors/src/org/jetbrains/kotlin/types/ErrorUtils.java +++ b/core/descriptors/src/org/jetbrains/kotlin/types/ErrorUtils.java @@ -30,7 +30,6 @@ import org.jetbrains.kotlin.descriptors.impl.TypeParameterDescriptorImpl; import org.jetbrains.kotlin.incremental.components.LookupLocation; import org.jetbrains.kotlin.name.FqName; import org.jetbrains.kotlin.name.Name; -import org.jetbrains.kotlin.resolve.ImportPath; import org.jetbrains.kotlin.resolve.descriptorUtil.DescriptorUtilsKt; import org.jetbrains.kotlin.resolve.scopes.DescriptorKindFilter; import org.jetbrains.kotlin.resolve.scopes.MemberScope; @@ -56,12 +55,6 @@ public class ErrorUtils { return null; } - @NotNull - @Override - public List getDefaultImports() { - return emptyList(); - } - @NotNull @Override public Annotations getAnnotations() { @@ -70,9 +63,7 @@ public class ErrorUtils { @NotNull @Override - public Collection getSubPackagesOf( - @NotNull FqName fqName, @NotNull Function1 nameFilter - ) { + public Collection getSubPackagesOf(@NotNull FqName fqName, @NotNull Function1 nameFilter) { return emptyList(); } diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/navigation/SourceNavigationHelper.java b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/navigation/SourceNavigationHelper.java index 2e4f366db0e..1a0ffa42cc8 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/navigation/SourceNavigationHelper.java +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/navigation/SourceNavigationHelper.java @@ -57,7 +57,6 @@ import org.jetbrains.kotlin.platform.JavaToKotlinClassMap; import org.jetbrains.kotlin.psi.*; import org.jetbrains.kotlin.resolve.BindingTraceContext; import org.jetbrains.kotlin.resolve.TargetPlatform; -import org.jetbrains.kotlin.resolve.jvm.platform.JvmPlatform; import org.jetbrains.kotlin.resolve.lazy.KotlinCodeAnalyzer; import org.jetbrains.kotlin.resolve.lazy.ResolveSession; import org.jetbrains.kotlin.resolve.lazy.declarations.FileBasedDeclarationProviderFactory; @@ -236,9 +235,8 @@ public class SourceNavigationHelper { @NotNull Collection candidates, @NotNull Project project ) { - MutableModuleContext newModuleContext = ContextKt.ContextForNewModule( - project, Name.special(""), JvmPlatform.INSTANCE.getDefaultImports(), DefaultBuiltIns.getInstance() - ); + MutableModuleContext newModuleContext = + ContextKt.ContextForNewModule(project, Name.special(""), DefaultBuiltIns.getInstance()); newModuleContext.setDependencies(newModuleContext.getModule(), newModuleContext.getModule().getBuiltIns().getBuiltInsModule()); diff --git a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/textBuilder/DeserializerForDecompilerBase.kt b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/textBuilder/DeserializerForDecompilerBase.kt index 56fde52f2ea..35c95473b41 100644 --- a/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/textBuilder/DeserializerForDecompilerBase.kt +++ b/idea/idea-analysis/src/org/jetbrains/kotlin/idea/decompiler/textBuilder/DeserializerForDecompilerBase.kt @@ -60,7 +60,7 @@ abstract class DeserializerForDecompilerBase( protected fun createDummyPackageFragment(fqName: FqName): MutablePackageFragmentDescriptor = MutablePackageFragmentDescriptor(moduleDescriptor, fqName) - private fun createDummyModule(name: String) = ModuleDescriptorImpl(Name.special("<$name>"), storageManager, emptyList(), builtIns) + private fun createDummyModule(name: String) = ModuleDescriptorImpl(Name.special("<$name>"), storageManager, builtIns) init { moduleDescriptor.initialize(packageFragmentProvider)