From 352af4b2455c8d1ee59f97b4ef6c99096ee5d772 Mon Sep 17 00:00:00 2001 From: Ilya Muradyan Date: Thu, 20 Oct 2022 15:59:48 +0200 Subject: [PATCH] Make the code compatible with IDE plugin --- .../kotlin/analyzer/AnalyzerFacade.kt | 39 +++++++++++++++++-- .../ResolverForSingleModuleProject.kt | 1 + .../MultiModuleJavaAnalysisCustomTest.kt | 1 + 3 files changed, 38 insertions(+), 3 deletions(-) diff --git a/compiler/frontend/src/org/jetbrains/kotlin/analyzer/AnalyzerFacade.kt b/compiler/frontend/src/org/jetbrains/kotlin/analyzer/AnalyzerFacade.kt index 87c01554773..ddcf9afa848 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/analyzer/AnalyzerFacade.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/analyzer/AnalyzerFacade.kt @@ -128,15 +128,48 @@ interface LibraryModuleInfo : ModuleInfo { } abstract class ResolverForModuleFactory { - abstract fun createResolverForModule( + open fun createResolverForModule( moduleDescriptor: ModuleDescriptorImpl, moduleContext: ModuleContext, moduleContent: ModuleContent, resolverForProject: ResolverForProject, languageVersionSettings: LanguageVersionSettings, sealedInheritorsProvider: SealedClassInheritorsProvider, - resolveOptimizingOptions: OptimizingOptions? = null, - ): ResolverForModule + resolveOptimizingOptions: OptimizingOptions?, + ): ResolverForModule { + @Suppress("DEPRECATION") + return createResolverForModule( + moduleDescriptor, + moduleContext, + moduleContent, + resolverForProject, + languageVersionSettings, + sealedInheritorsProvider + ) + } + + @Deprecated( + "Left only for compatibility, please use full version", + ReplaceWith("createResolverForModule(moduleDescriptor, moduleContext, moduleContent, resolverForProject, languageVersionSettings, sealedInheritorsProvider, null)") + ) + open fun createResolverForModule( + moduleDescriptor: ModuleDescriptorImpl, + moduleContext: ModuleContext, + moduleContent: ModuleContent, + resolverForProject: ResolverForProject, + languageVersionSettings: LanguageVersionSettings, + sealedInheritorsProvider: SealedClassInheritorsProvider + ): ResolverForModule { + return createResolverForModule( + moduleDescriptor, + moduleContext, + moduleContent, + resolverForProject, + languageVersionSettings, + sealedInheritorsProvider, + null + ) + } } class LazyModuleDependencies( diff --git a/compiler/frontend/src/org/jetbrains/kotlin/analyzer/ResolverForSingleModuleProject.kt b/compiler/frontend/src/org/jetbrains/kotlin/analyzer/ResolverForSingleModuleProject.kt index c09265578c7..db221ec8ede 100644 --- a/compiler/frontend/src/org/jetbrains/kotlin/analyzer/ResolverForSingleModuleProject.kt +++ b/compiler/frontend/src/org/jetbrains/kotlin/analyzer/ResolverForSingleModuleProject.kt @@ -62,5 +62,6 @@ class ResolverForSingleModuleProject( this, languageVersionSettings, CliSealedClassInheritorsProvider, + null, ) } diff --git a/compiler/tests/org/jetbrains/kotlin/jvm/compiler/MultiModuleJavaAnalysisCustomTest.kt b/compiler/tests/org/jetbrains/kotlin/jvm/compiler/MultiModuleJavaAnalysisCustomTest.kt index 43abf2a84d3..ca11fcf3e7e 100644 --- a/compiler/tests/org/jetbrains/kotlin/jvm/compiler/MultiModuleJavaAnalysisCustomTest.kt +++ b/compiler/tests/org/jetbrains/kotlin/jvm/compiler/MultiModuleJavaAnalysisCustomTest.kt @@ -116,6 +116,7 @@ class MultiModuleJavaAnalysisCustomTest : KtUsefulTestCase() { this, LanguageVersionSettingsImpl.DEFAULT, CliSealedClassInheritorsProvider, + null, ) }