From dd000625598b4db1c7dc5a55e7a3df00ea1b7952 Mon Sep 17 00:00:00 2001 From: Ilya Kirillov Date: Mon, 18 Jul 2022 23:07:06 +0200 Subject: [PATCH] [analysis] introduce KtBuiltinsModule and remove hacks related to the stdlib module search --- .../analysis/api/fir/utils/ktSymbolUtils.kt | 4 - ...ysisApiFirLibraryBinaryTestConfigurator.kt | 1 - ...ysisApiFirLibrarySourceTestConfigurator.kt | 1 - .../project/structure/KtModuleWithFiles.kt | 3 - .../structure/KtStaticModuleProvider.kt | 4 - .../builder/KtLibraryModuleBuilder.kt | 2 - .../structure/impl/KtLibraryModuleImpl.kt | 1 - .../structure/impl/KtModuleProviderImpl.kt | 6 - .../project/structure/impl/KtModuleUtils.kt | 3 - .../scopes/memberScopeByFqName/Int.txt | 126 +++++++++--------- .../memberScopeByFqName/MutableList.txt | 48 +++---- .../scopes/memberScopeByFqName/enumEntry.txt | 12 +- .../memberScopeByFqName/kotlin.Function2.txt | 8 +- .../customSerlializable.txt | 6 +- .../generatedCompanionWithFoo.txt | 6 +- .../nestedClassAndMaterializeMember.txt | 6 +- .../symbols/symbolByFqName/iterator.txt | 2 +- .../symbols/symbolByFqName/memberFunction.txt | 2 +- .../memberFunctionWithOverloads.txt | 4 +- .../symbols/symbolByFqName/nestedClass.txt | 2 +- .../AnalysisApiKtModuleProviderImpl.kt | 1 + .../project/structure/KtSourceModuleImpl.kt | 1 - .../structure/TestModuleStructureFactory.kt | 15 +-- .../structure/LLFirBuiltinsSessionFactory.kt | 16 ++- .../fir/project/structure/LLFirModuleData.kt | 27 ---- .../api/fir/sessions/LLFirSessionProvider.kt | 5 - ...irLowLevelCompilerBasedTestConfigurator.kt | 4 - .../analysis/project/structure/KtModule.kt | 21 +++ .../structure/ProjectStructureProvider.kt | 2 - 29 files changed, 152 insertions(+), 187 deletions(-) diff --git a/analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/utils/ktSymbolUtils.kt b/analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/utils/ktSymbolUtils.kt index 89a1de7e407..ab65ef2fc61 100644 --- a/analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/utils/ktSymbolUtils.kt +++ b/analysis/analysis-api-fir/src/org/jetbrains/kotlin/analysis/api/fir/utils/ktSymbolUtils.kt @@ -8,11 +8,9 @@ package org.jetbrains.kotlin.analysis.api.fir.utils import org.jetbrains.kotlin.analysis.api.fir.symbols.KtFirSymbol import org.jetbrains.kotlin.analysis.api.symbols.KtSymbol import org.jetbrains.kotlin.analysis.low.level.api.fir.api.LLFirResolveSession -import org.jetbrains.kotlin.analysis.low.level.api.fir.project.structure.LLFirBuiltinsModuleData import org.jetbrains.kotlin.analysis.low.level.api.fir.project.structure.LLFirKtModuleBasedModuleData import org.jetbrains.kotlin.analysis.low.level.api.fir.project.structure.firModuleData import org.jetbrains.kotlin.analysis.project.structure.KtModule -import org.jetbrains.kotlin.analysis.project.structure.ProjectStructureProvider import org.jetbrains.kotlin.fir.dispatchReceiverClassOrNull import org.jetbrains.kotlin.fir.resolve.toFirRegularClassSymbol import org.jetbrains.kotlin.fir.symbols.FirBasedSymbol @@ -35,8 +33,6 @@ fun FirBasedSymbol<*>.getContainingKtModule(firResolveSession: LLFirResolveSessi } return when (val moduleData = target.firModuleData) { is LLFirKtModuleBasedModuleData -> moduleData.ktModule - is LLFirBuiltinsModuleData -> firResolveSession.project.getService(ProjectStructureProvider::class.java).getStdlibWithBuiltinsModule(moduleData.platform) - ?: error("Builtins not found for the $moduleData") } } diff --git a/analysis/analysis-api-fir/tests/org/jetbrains/kotlin/analysis/api/fir/test/configurators/library/AnalysisApiFirLibraryBinaryTestConfigurator.kt b/analysis/analysis-api-fir/tests/org/jetbrains/kotlin/analysis/api/fir/test/configurators/library/AnalysisApiFirLibraryBinaryTestConfigurator.kt index fa4dc6b4cbb..d8466291d68 100644 --- a/analysis/analysis-api-fir/tests/org/jetbrains/kotlin/analysis/api/fir/test/configurators/library/AnalysisApiFirLibraryBinaryTestConfigurator.kt +++ b/analysis/analysis-api-fir/tests/org/jetbrains/kotlin/analysis/api/fir/test/configurators/library/AnalysisApiFirLibraryBinaryTestConfigurator.kt @@ -56,7 +56,6 @@ object AnalysisApiFirLibraryBinaryTestConfigurator : AnalysisApiTestConfigurator project, binaryRoots = listOf(library), librarySources = null, - isBuitinsContainingStdlib = false, ), decompiledFiles ) diff --git a/analysis/analysis-api-fir/tests/org/jetbrains/kotlin/analysis/api/fir/test/configurators/library/AnalysisApiFirLibrarySourceTestConfigurator.kt b/analysis/analysis-api-fir/tests/org/jetbrains/kotlin/analysis/api/fir/test/configurators/library/AnalysisApiFirLibrarySourceTestConfigurator.kt index d52f7d44e38..2df10afec58 100644 --- a/analysis/analysis-api-fir/tests/org/jetbrains/kotlin/analysis/api/fir/test/configurators/library/AnalysisApiFirLibrarySourceTestConfigurator.kt +++ b/analysis/analysis-api-fir/tests/org/jetbrains/kotlin/analysis/api/fir/test/configurators/library/AnalysisApiFirLibrarySourceTestConfigurator.kt @@ -62,7 +62,6 @@ object AnalysisApiFirLibrarySourceTestConfigurator : AnalysisApiTestConfigurator project, binaryRoots = listOf(libraryJar), librarySources = null, - isBuitinsContainingStdlib = false, ) val decompiledPsiFilesFromSourceJar = LibraryUtils.getAllPsiFilesFromTheJar(librarySourcesJar, project) diff --git a/analysis/analysis-api-standalone/analysis-api-standalone-base/src/org/jetbrains/kotlin/analysis/api/standalone/base/project/structure/KtModuleWithFiles.kt b/analysis/analysis-api-standalone/analysis-api-standalone-base/src/org/jetbrains/kotlin/analysis/api/standalone/base/project/structure/KtModuleWithFiles.kt index f9cce722753..a0b1e59bcd7 100644 --- a/analysis/analysis-api-standalone/analysis-api-standalone-base/src/org/jetbrains/kotlin/analysis/api/standalone/base/project/structure/KtModuleWithFiles.kt +++ b/analysis/analysis-api-standalone/analysis-api-standalone-base/src/org/jetbrains/kotlin/analysis/api/standalone/base/project/structure/KtModuleWithFiles.kt @@ -10,14 +10,11 @@ import com.intellij.psi.PsiFileSystemItem import com.intellij.psi.PsiJavaFile import org.jetbrains.kotlin.analysis.api.standalone.base.project.structure.StandaloneProjectFactory.findJvmRootsForJavaFiles import org.jetbrains.kotlin.analysis.project.structure.KtBinaryModule -import org.jetbrains.kotlin.analysis.project.structure.KtLibraryModule import org.jetbrains.kotlin.analysis.project.structure.KtModule -import org.jetbrains.kotlin.platform.TargetPlatform data class KtModuleProjectStructure( val mainModules: List, val binaryModules: Iterable, - val stdlibFor: (TargetPlatform) -> KtLibraryModule, ) { fun allKtModules(): List = buildList { mainModules.mapTo(this) { it.ktModule } diff --git a/analysis/analysis-api-standalone/analysis-api-standalone-base/src/org/jetbrains/kotlin/analysis/api/standalone/base/project/structure/KtStaticModuleProvider.kt b/analysis/analysis-api-standalone/analysis-api-standalone-base/src/org/jetbrains/kotlin/analysis/api/standalone/base/project/structure/KtStaticModuleProvider.kt index 238be8c8750..397094b1580 100644 --- a/analysis/analysis-api-standalone/analysis-api-standalone-base/src/org/jetbrains/kotlin/analysis/api/standalone/base/project/structure/KtStaticModuleProvider.kt +++ b/analysis/analysis-api-standalone/analysis-api-standalone-base/src/org/jetbrains/kotlin/analysis/api/standalone/base/project/structure/KtStaticModuleProvider.kt @@ -23,8 +23,4 @@ class KtStaticModuleProvider( override fun getKtBinaryModules(): Collection { return projectStructure.allKtModules().filterIsInstance() } - - override fun getStdlibWithBuiltinsModule(platform: TargetPlatform): KtLibraryModule { - return projectStructure.stdlibFor(platform) - } } \ No newline at end of file diff --git a/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/builder/KtLibraryModuleBuilder.kt b/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/builder/KtLibraryModuleBuilder.kt index 131e045f71d..07802bb2563 100644 --- a/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/builder/KtLibraryModuleBuilder.kt +++ b/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/builder/KtLibraryModuleBuilder.kt @@ -16,7 +16,6 @@ import kotlin.contracts.contract public class KtLibraryModuleBuilder : KtBinaryModuleBuilder() { public lateinit var libraryName: String public var librarySources: KtLibrarySourceModule? = null - public var isBuiltinsContainingStdlib: Boolean = false override fun build(): KtLibraryModule { return KtLibraryModuleImpl( @@ -29,7 +28,6 @@ public class KtLibraryModuleBuilder : KtBinaryModuleBuilder() { binaryRoots, libraryName, librarySources, - isBuiltinsContainingStdlib, ) } } diff --git a/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/impl/KtLibraryModuleImpl.kt b/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/impl/KtLibraryModuleImpl.kt index 312b7d226f5..e212c0d577a 100644 --- a/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/impl/KtLibraryModuleImpl.kt +++ b/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/impl/KtLibraryModuleImpl.kt @@ -24,7 +24,6 @@ internal class KtLibraryModuleImpl( private val binaryRoots: Collection, override val libraryName: String, override val librarySources: KtLibrarySourceModule?, - internal val isBuiltinsContainingStdlib: Boolean, ) : KtLibraryModule, KtModuleWithPlatform { override val analyzerServices: PlatformDependentAnalyzerServices = super.analyzerServices diff --git a/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/impl/KtModuleProviderImpl.kt b/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/impl/KtModuleProviderImpl.kt index d5ec5d7de7b..d0c81464209 100644 --- a/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/impl/KtModuleProviderImpl.kt +++ b/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/impl/KtModuleProviderImpl.kt @@ -38,12 +38,6 @@ internal class KtModuleProviderImpl( return binaryModules } - override fun getStdlibWithBuiltinsModule(platform: TargetPlatform): KtLibraryModule? { - return binaryModules - .filterIsInstance() - .firstOrNull { it.isBuiltinsContainingStdlib && it.platform == platform } - } - internal fun allSourceFiles(): List = buildList { val files = mainModules.mapNotNull { (it as? KtSourceModuleImpl)?.sourceRoots }.flatten() addAll(files) diff --git a/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/impl/KtModuleUtils.kt b/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/impl/KtModuleUtils.kt index c4ca6269485..ceb708451e3 100644 --- a/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/impl/KtModuleUtils.kt +++ b/analysis/analysis-api-standalone/src/org/jetbrains/kotlin/analysis/project/structure/impl/KtModuleUtils.kt @@ -130,9 +130,6 @@ internal fun buildKtModuleProviderByCompilerConfiguration( this.project = project binaryRoots = listOf(root) libraryName = getNameWithoutExtension(root.toString()) - isBuiltinsContainingStdlib = - libraryName.startsWith("kotlin-stdlib") && - !libraryName.contains("common") && !libraryName.contains("jdk") } ) } diff --git a/analysis/analysis-api/testData/scopes/memberScopeByFqName/Int.txt b/analysis/analysis-api/testData/scopes/memberScopeByFqName/Int.txt index c8a4d06b40c..93472395bca 100644 --- a/analysis/analysis-api/testData/scopes/memberScopeByFqName/Int.txt +++ b/analysis/analysis-api/testData/scopes/memberScopeByFqName/Int.txt @@ -27,7 +27,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -59,7 +59,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -91,7 +91,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -123,7 +123,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -155,7 +155,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -187,7 +187,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -219,7 +219,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -246,7 +246,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -278,7 +278,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -310,7 +310,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -342,7 +342,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -374,7 +374,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -406,7 +406,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -438,7 +438,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -470,7 +470,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -497,7 +497,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -527,7 +527,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -559,7 +559,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -591,7 +591,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -623,7 +623,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -655,7 +655,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -687,7 +687,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -719,7 +719,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -751,7 +751,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -783,7 +783,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -815,7 +815,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -847,7 +847,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -879,7 +879,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -911,7 +911,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -943,7 +943,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -972,7 +972,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1001,7 +1001,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1030,7 +1030,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1059,7 +1059,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1093,7 +1093,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1127,7 +1127,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1161,7 +1161,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1195,7 +1195,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1229,7 +1229,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1263,7 +1263,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1295,7 +1295,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1327,7 +1327,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1359,7 +1359,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1391,7 +1391,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1423,7 +1423,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1455,7 +1455,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1487,7 +1487,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1519,7 +1519,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1549,7 +1549,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1579,7 +1579,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1609,7 +1609,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1639,7 +1639,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1669,7 +1669,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1699,7 +1699,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1729,7 +1729,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1759,7 +1759,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1789,7 +1789,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1819,7 +1819,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1851,7 +1851,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1883,7 +1883,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Int - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -1910,7 +1910,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtNamedClassOrObjectSymbol: @@ -1933,7 +1933,7 @@ KtNamedClassOrObjectSymbol: symbolKind: CLASS_MEMBER typeParameters: [] visibility: Public - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtConstructorSymbol: @@ -1971,5 +1971,5 @@ KtConstructorSymbol: typeParameters: [] valueParameters: [] visibility: Private - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null \ No newline at end of file diff --git a/analysis/analysis-api/testData/scopes/memberScopeByFqName/MutableList.txt b/analysis/analysis-api/testData/scopes/memberScopeByFqName/MutableList.txt index aa60238672c..3ba649e40d6 100644 --- a/analysis/analysis-api/testData/scopes/memberScopeByFqName/MutableList.txt +++ b/analysis/analysis-api/testData/scopes/memberScopeByFqName/MutableList.txt @@ -24,7 +24,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -54,7 +54,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -84,7 +84,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -113,7 +113,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -140,7 +140,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -167,7 +167,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -196,7 +196,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -225,7 +225,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -254,7 +254,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -283,7 +283,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -312,7 +312,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -342,7 +342,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -372,7 +372,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -401,7 +401,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -430,7 +430,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -459,7 +459,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -488,7 +488,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -515,7 +515,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/collections/List - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -542,7 +542,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -571,7 +571,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/MutableList - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtKotlinPropertySymbol: @@ -601,7 +601,7 @@ KtKotlinPropertySymbol: typeParameters: [] visibility: Public getDispatchReceiver(): kotlin/collections/List - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null getterDeprecationStatus: null javaGetterName: getSize @@ -634,7 +634,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -661,7 +661,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -688,5 +688,5 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null \ No newline at end of file diff --git a/analysis/analysis-api/testData/scopes/memberScopeByFqName/enumEntry.txt b/analysis/analysis-api/testData/scopes/memberScopeByFqName/enumEntry.txt index ec10900a48a..fb49af9e624 100644 --- a/analysis/analysis-api/testData/scopes/memberScopeByFqName/enumEntry.txt +++ b/analysis/analysis-api/testData/scopes/memberScopeByFqName/enumEntry.txt @@ -56,7 +56,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Protected getDispatchReceiver(): kotlin/Enum - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -114,7 +114,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Enum - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -141,7 +141,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Enum - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -168,7 +168,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Enum - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtKotlinPropertySymbol: @@ -201,7 +201,7 @@ KtKotlinPropertySymbol: typeParameters: [] visibility: Public getDispatchReceiver(): kotlin/Enum - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null getterDeprecationStatus: null javaGetterName: getName @@ -235,7 +235,7 @@ KtKotlinPropertySymbol: typeParameters: [] visibility: Public getDispatchReceiver(): kotlin/Enum - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null getterDeprecationStatus: null javaGetterName: getOrdinal diff --git a/analysis/analysis-api/testData/scopes/memberScopeByFqName/kotlin.Function2.txt b/analysis/analysis-api/testData/scopes/memberScopeByFqName/kotlin.Function2.txt index 90d6d09158f..8151756dc15 100644 --- a/analysis/analysis-api/testData/scopes/memberScopeByFqName/kotlin.Function2.txt +++ b/analysis/analysis-api/testData/scopes/memberScopeByFqName/kotlin.Function2.txt @@ -25,7 +25,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Function2 - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -54,7 +54,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -81,7 +81,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -108,5 +108,5 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null \ No newline at end of file diff --git a/analysis/analysis-api/testData/scopes/memberScopeByFqName/withTestCompilerPluginEnabled/customSerlializable.txt b/analysis/analysis-api/testData/scopes/memberScopeByFqName/withTestCompilerPluginEnabled/customSerlializable.txt index 9f774405d87..9c133d55665 100644 --- a/analysis/analysis-api/testData/scopes/memberScopeByFqName/withTestCompilerPluginEnabled/customSerlializable.txt +++ b/analysis/analysis-api/testData/scopes/memberScopeByFqName/withTestCompilerPluginEnabled/customSerlializable.txt @@ -82,7 +82,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -109,7 +109,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -136,7 +136,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtConstructorSymbol: diff --git a/analysis/analysis-api/testData/scopes/memberScopeByFqName/withTestCompilerPluginEnabled/generatedCompanionWithFoo.txt b/analysis/analysis-api/testData/scopes/memberScopeByFqName/withTestCompilerPluginEnabled/generatedCompanionWithFoo.txt index 50b20353ea1..3ac466e3c22 100644 --- a/analysis/analysis-api/testData/scopes/memberScopeByFqName/withTestCompilerPluginEnabled/generatedCompanionWithFoo.txt +++ b/analysis/analysis-api/testData/scopes/memberScopeByFqName/withTestCompilerPluginEnabled/generatedCompanionWithFoo.txt @@ -51,7 +51,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -78,7 +78,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -105,7 +105,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtConstructorSymbol: diff --git a/analysis/analysis-api/testData/scopes/memberScopeByFqName/withTestCompilerPluginEnabled/nestedClassAndMaterializeMember.txt b/analysis/analysis-api/testData/scopes/memberScopeByFqName/withTestCompilerPluginEnabled/nestedClassAndMaterializeMember.txt index 70a29021be3..c57b96108e1 100644 --- a/analysis/analysis-api/testData/scopes/memberScopeByFqName/withTestCompilerPluginEnabled/nestedClassAndMaterializeMember.txt +++ b/analysis/analysis-api/testData/scopes/memberScopeByFqName/withTestCompilerPluginEnabled/nestedClassAndMaterializeMember.txt @@ -51,7 +51,7 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -78,7 +78,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -105,7 +105,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/Any - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtNamedClassOrObjectSymbol: diff --git a/analysis/analysis-api/testData/symbols/symbolByFqName/iterator.txt b/analysis/analysis-api/testData/symbols/symbolByFqName/iterator.txt index dd5cef50265..6a9fb93bec0 100644 --- a/analysis/analysis-api/testData/symbols/symbolByFqName/iterator.txt +++ b/analysis/analysis-api/testData/symbols/symbolByFqName/iterator.txt @@ -20,5 +20,5 @@ KtNamedClassOrObjectSymbol: KtTypeParameterSymbol(T) ] visibility: Public - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/symbolByFqName/memberFunction.txt b/analysis/analysis-api/testData/symbols/symbolByFqName/memberFunction.txt index 121edc90c3b..171c0cb0a42 100644 --- a/analysis/analysis-api/testData/symbols/symbolByFqName/memberFunction.txt +++ b/analysis/analysis-api/testData/symbols/symbolByFqName/memberFunction.txt @@ -24,5 +24,5 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/List - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/symbolByFqName/memberFunctionWithOverloads.txt b/analysis/analysis-api/testData/symbols/symbolByFqName/memberFunctionWithOverloads.txt index 0d3e0fdac05..fcc03043efd 100644 --- a/analysis/analysis-api/testData/symbols/symbolByFqName/memberFunctionWithOverloads.txt +++ b/analysis/analysis-api/testData/symbols/symbolByFqName/memberFunctionWithOverloads.txt @@ -22,7 +22,7 @@ KtFunctionSymbol: valueParameters: [] visibility: Public getDispatchReceiver(): kotlin/collections/List - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null KtFunctionSymbol: @@ -51,5 +51,5 @@ KtFunctionSymbol: ] visibility: Public getDispatchReceiver(): kotlin/collections/List - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null \ No newline at end of file diff --git a/analysis/analysis-api/testData/symbols/symbolByFqName/nestedClass.txt b/analysis/analysis-api/testData/symbols/symbolByFqName/nestedClass.txt index 224a3e66e8a..e1e9a035a16 100644 --- a/analysis/analysis-api/testData/symbols/symbolByFqName/nestedClass.txt +++ b/analysis/analysis-api/testData/symbols/symbolByFqName/nestedClass.txt @@ -21,5 +21,5 @@ KtNamedClassOrObjectSymbol: KtTypeParameterSymbol(V) ] visibility: Public - getContainingModule: KtLibraryModule "Library kotlin-stdlib" + getContainingModule: KtBinaryModule "Builtins for JVM (1.8)" deprecationStatus: null \ No newline at end of file diff --git a/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/project/structure/AnalysisApiKtModuleProviderImpl.kt b/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/project/structure/AnalysisApiKtModuleProviderImpl.kt index e1f4373d92c..a4e14cf4a95 100644 --- a/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/project/structure/AnalysisApiKtModuleProviderImpl.kt +++ b/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/project/structure/AnalysisApiKtModuleProviderImpl.kt @@ -52,6 +52,7 @@ class AnalysisApiKtModuleProviderImpl( is KtLibrarySourceModule -> ktModule.libraryName is KtSourceModule -> ktModule.moduleName is KtNotUnderContentRootModule -> TODO() + is KtBuiltinsModule -> "Builtins for ${ktModule.platform}" } diff --git a/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/project/structure/KtSourceModuleImpl.kt b/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/project/structure/KtSourceModuleImpl.kt index 1ca49207e16..a4437623290 100644 --- a/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/project/structure/KtSourceModuleImpl.kt +++ b/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/project/structure/KtSourceModuleImpl.kt @@ -58,7 +58,6 @@ class KtLibraryModuleImpl( override val project: Project, private val binaryRoots: Collection, override var librarySources: KtLibrarySourceModule?, - val isBuitinsContainingStdlib: Boolean, ) : KtLibraryModule, KtModuleWithModifiableDependencies { override val analyzerServices: PlatformDependentAnalyzerServices get() = platform.getAnalyzerServices() override fun getBinaryRoots(): Collection = binaryRoots diff --git a/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/project/structure/TestModuleStructureFactory.kt b/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/project/structure/TestModuleStructureFactory.kt index 8682b549909..e220940aaf6 100644 --- a/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/project/structure/TestModuleStructureFactory.kt +++ b/analysis/analysis-test-framework/tests/org/jetbrains/kotlin/analysis/test/framework/project/structure/TestModuleStructureFactory.kt @@ -96,12 +96,8 @@ object TestModuleStructureFactory { } } - val allStdLibCandidates = modulesFromTestServices.flatMap { module -> - module.ktModule.allDirectDependenciesOfType() - }.filter { it.isBuitinsContainingStdlib } - return KtModuleProjectStructure(modulesFromTestServices, binaryModulesBySourceRoots.values) { platform -> - allStdLibCandidates.first { it.platform == platform } - } + + return KtModuleProjectStructure(modulesFromTestServices, binaryModulesBySourceRoots.values) } @OptIn(TestInfrastructureInternals::class) @@ -114,7 +110,7 @@ object TestModuleStructureFactory { val contentRoots = compilerConfiguration[CLIConfigurationKeys.CONTENT_ROOTS, emptyList()] return contentRoots .filterIsInstance() - .map { root -> createKtLibraryModuleByJar(root.file.toPath(), testServices, project, isBuitinsContainingStdlib = false) } + .map { root -> createKtLibraryModuleByJar(root.file.toPath(), testServices, project) } } @@ -155,7 +151,6 @@ object TestModuleStructureFactory { jar, testServices, project, - isBuitinsContainingStdlib = jar.nameWithoutExtension == "kotlin-stdlib-jvm-minimal-for-test" ) } } @@ -165,7 +160,6 @@ object TestModuleStructureFactory { testServices: TestServices, project: Project, libraryName: String = jar.nameWithoutExtension, - isBuitinsContainingStdlib: Boolean = false, ): KtLibraryModuleImpl { check(jar.extension == "jar") check(jar.exists()) @@ -176,7 +170,6 @@ object TestModuleStructureFactory { project, listOf(jar), librarySources = null, - isBuitinsContainingStdlib, ) } @@ -191,7 +184,7 @@ object TestModuleStructureFactory { KotlinPaths.Jar.StdLib to PathUtil.KOTLIN_JAVA_STDLIB_NAME, ).map { (jar, name) -> val lib = PathUtil.kotlinPathsForDistDirectory.jar(jar).toPath().toAbsolutePath() - createKtLibraryModuleByJar(lib, testServices, project, name, isBuitinsContainingStdlib = jar == KotlinPaths.Jar.StdLib) + createKtLibraryModuleByJar(lib, testServices, project, name) } } diff --git a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/project/structure/LLFirBuiltinsSessionFactory.kt b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/project/structure/LLFirBuiltinsSessionFactory.kt index 42f72a2137d..3705c225f10 100644 --- a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/project/structure/LLFirBuiltinsSessionFactory.kt +++ b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/project/structure/LLFirBuiltinsSessionFactory.kt @@ -9,6 +9,8 @@ import com.intellij.openapi.project.Project import org.jetbrains.kotlin.analysis.low.level.api.fir.providers.LLFirBuiltinSymbolProvider import org.jetbrains.kotlin.analysis.low.level.api.fir.providers.LLFirBuiltinsAndCloneableSessionProvider import org.jetbrains.kotlin.analysis.low.level.api.fir.sessions.LLFirBuiltinsAndCloneableSession +import org.jetbrains.kotlin.analysis.project.structure.KtBuiltinsModule +import org.jetbrains.kotlin.analyzer.common.CommonPlatformAnalyzerServices import org.jetbrains.kotlin.fir.BuiltinTypes import org.jetbrains.kotlin.fir.PrivateSessionConstructor import org.jetbrains.kotlin.fir.SessionConfiguration @@ -25,6 +27,9 @@ import org.jetbrains.kotlin.fir.symbols.FirPhaseManager import java.util.concurrent.ConcurrentHashMap import org.jetbrains.kotlin.config.LanguageVersionSettingsImpl import org.jetbrains.kotlin.platform.TargetPlatform +import org.jetbrains.kotlin.platform.isCommon +import org.jetbrains.kotlin.platform.js.isJs +import org.jetbrains.kotlin.platform.jvm.isJvm import org.jetbrains.kotlin.resolve.jvm.platform.JvmPlatformAnalyzerServices @OptIn(PrivateSessionConstructor::class, SessionConfiguration::class) @@ -39,8 +44,9 @@ import org.jetbrains.kotlin.resolve.jvm.platform.JvmPlatformAnalyzerServices } private fun createBuiltinsAndCloneableSession(platform: TargetPlatform): LLFirBuiltinsAndCloneableSession { + val builtinsModule = KtBuiltinsModule(platform, platform.getAnalyzerServices(), project) return LLFirBuiltinsAndCloneableSession(project, builtInTypes).apply session@{ - val moduleData = LLFirBuiltinsModuleData(platform, JvmPlatformAnalyzerServices/*TODO*/).apply { + val moduleData = LLFirKtModuleBasedModuleData(builtinsModule).apply { bindSession(this@session) } registerIdeComponents(project) @@ -65,4 +71,12 @@ import org.jetbrains.kotlin.resolve.jvm.platform.JvmPlatformAnalyzerServices fun getInstance(project: Project): LLFirBuiltinsSessionFactory = project.getService(LLFirBuiltinsSessionFactory::class.java) } +} + +private fun TargetPlatform.getAnalyzerServices() = when { + isJvm() -> JvmPlatformAnalyzerServices + isJs() -> JvmPlatformAnalyzerServices/*TODO*/ +// isNative() -> NativePlatformAnalyzerServices + isCommon() -> CommonPlatformAnalyzerServices + else -> JvmPlatformAnalyzerServices/*TODO*/ } \ No newline at end of file diff --git a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/project/structure/LLFirModuleData.kt b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/project/structure/LLFirModuleData.kt index f0b24ee2925..1499e2e8044 100644 --- a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/project/structure/LLFirModuleData.kt +++ b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/project/structure/LLFirModuleData.kt @@ -36,33 +36,6 @@ val FirSession.firKtModuleBasedModuleData: LLFirKtModuleBasedModuleData val FirBasedSymbol<*>.firModuleData: LLFirModuleData get() = fir.firModuleData -class LLFirBuiltinsModuleData( - override val platform: TargetPlatform, - override val analyzerServices: PlatformDependentAnalyzerServices -) : LLFirModuleData() { - override val name: Name - get() = Name.special("") - - override val dependencies: List get() = emptyList() - override val dependsOnDependencies: List get() = emptyList() - override val friendDependencies: List get() = emptyList() - - - override fun equals(other: Any?): Boolean { - if (this === other) return true - if (javaClass != other?.javaClass) return false - - other as LLFirBuiltinsModuleData - - if (platform != other.platform) return false - - return true - } - - override fun hashCode(): Int { - return platform.hashCode() - } -} class LLFirKtModuleBasedModuleData( val ktModule: KtModule, diff --git a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/sessions/LLFirSessionProvider.kt b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/sessions/LLFirSessionProvider.kt index 1da425e2cc4..5231d86f07f 100644 --- a/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/sessions/LLFirSessionProvider.kt +++ b/analysis/low-level-api-fir/src/org/jetbrains/kotlin/analysis/low/level/api/fir/sessions/LLFirSessionProvider.kt @@ -7,15 +7,11 @@ package org.jetbrains.kotlin.analysis.low.level.api.fir.sessions import com.intellij.openapi.project.Project import org.jetbrains.kotlin.analysis.api.impl.barebone.annotations.Immutable -import org.jetbrains.kotlin.analysis.low.level.api.fir.file.builder.ModuleFileCache -import org.jetbrains.kotlin.analysis.low.level.api.fir.project.structure.LLFirBuiltinsModuleData import org.jetbrains.kotlin.analysis.low.level.api.fir.project.structure.LLFirKtModuleBasedModuleData import org.jetbrains.kotlin.analysis.low.level.api.fir.project.structure.LLFirModuleData import org.jetbrains.kotlin.analysis.project.structure.KtModule -import org.jetbrains.kotlin.analysis.project.structure.NoCacheForModuleException import org.jetbrains.kotlin.analysis.utils.errors.requireIsInstance import org.jetbrains.kotlin.fir.FirModuleData -import org.jetbrains.kotlin.fir.FirSession import org.jetbrains.kotlin.fir.FirSessionProvider @Immutable @@ -28,7 +24,6 @@ class LLFirSessionProvider internal constructor( override fun getSession(moduleData: FirModuleData): LLFirSession { requireIsInstance(moduleData) return when (moduleData) { - is LLFirBuiltinsModuleData -> moduleData.session as LLFirBuiltinsAndCloneableSession is LLFirKtModuleBasedModuleData -> getSession(moduleData.ktModule) } } diff --git a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/test/base/FirLowLevelCompilerBasedTestConfigurator.kt b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/test/base/FirLowLevelCompilerBasedTestConfigurator.kt index f00e55eb2fa..a2ad8334b9c 100644 --- a/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/test/base/FirLowLevelCompilerBasedTestConfigurator.kt +++ b/analysis/low-level-api-fir/tests/org/jetbrains/kotlin/analysis/low/level/api/fir/test/base/FirLowLevelCompilerBasedTestConfigurator.kt @@ -58,9 +58,6 @@ object FirLowLevelCompilerBasedTestConfigurator : AnalysisApiTestConfigurator() return KtModuleProjectStructure( mainModules = mainModules, binaryModules = mainModules.asSequence().flatMap { it.ktModule.allDirectDependenciesOfType() }.asIterable(), - stdlibFor = { platform -> - createFakeStdlibModule(platform, project) - } ) } @@ -74,7 +71,6 @@ object FirLowLevelCompilerBasedTestConfigurator : AnalysisApiTestConfigurator() project = project, binaryRoots = emptyList(), librarySources = null, - isBuitinsContainingStdlib = true ) override fun doOutOfBlockModification(file: KtFile) { diff --git a/analysis/project-structure/src/org/jetbrains/kotlin/analysis/project/structure/KtModule.kt b/analysis/project-structure/src/org/jetbrains/kotlin/analysis/project/structure/KtModule.kt index 5c8d54790ad..b22fcdf0893 100644 --- a/analysis/project-structure/src/org/jetbrains/kotlin/analysis/project/structure/KtModule.kt +++ b/analysis/project-structure/src/org/jetbrains/kotlin/analysis/project/structure/KtModule.kt @@ -150,6 +150,27 @@ public interface KtLibrarySourceModule : KtModuleWithProject { get() = "Library sourced of $libraryName" } +/** + * Module which contains kotlin [builtins](https://kotlinlang.org/spec/built-in-types-and-their-semantics.html) for specific platform + * Kotlin builtins are usually reside in the compiler, so [contentScope] and [getBinaryRoots] are empty + */ +public class KtBuiltinsModule( + override val platform: TargetPlatform, + override val analyzerServices: PlatformDependentAnalyzerServices, + override val project: Project +) : KtBinaryModule { + override val directRegularDependencies: List get() = emptyList() + override val directRefinementDependencies: List get() = emptyList() + override val directFriendDependencies: List get() = emptyList() + override val contentScope: GlobalSearchScope get() = GlobalSearchScope.EMPTY_SCOPE + override fun getBinaryRoots(): Collection = emptyList() + override val moduleDescription: String get() = "Builtins for $platform" + + override fun equals(other: Any?): Boolean = other is KtBuiltinsModule && this.platform == other.platform + override fun hashCode(): Int = platform.hashCode() +} + + /** * A set of sources which lives outside project content root. E.g, testdata files or source files of some other project. */ diff --git a/analysis/project-structure/src/org/jetbrains/kotlin/analysis/project/structure/ProjectStructureProvider.kt b/analysis/project-structure/src/org/jetbrains/kotlin/analysis/project/structure/ProjectStructureProvider.kt index cfe970054de..6ec742a42a5 100644 --- a/analysis/project-structure/src/org/jetbrains/kotlin/analysis/project/structure/ProjectStructureProvider.kt +++ b/analysis/project-structure/src/org/jetbrains/kotlin/analysis/project/structure/ProjectStructureProvider.kt @@ -20,8 +20,6 @@ public abstract class ProjectStructureProvider { */ // TODO: We rather need a session or facade that maintains this information. public abstract fun getKtBinaryModules(): Collection - - public abstract fun getStdlibWithBuiltinsModule(platform: TargetPlatform): KtLibraryModule? } /**