Add ability to provide specific AbsentDescriptorHandler

#EA-457188

Merge-request: KT-MR-8900
Merged-by: Vladimir Dolzhenko <Vladimir.Dolzhenko@jetbrains.com>
This commit is contained in:
Vladimir Dolzhenko
2023-02-22 12:44:46 +00:00
committed by Space Team
parent 41278d0797
commit 3e99807436
16 changed files with 416 additions and 36 deletions
@@ -15,6 +15,7 @@ import org.jetbrains.kotlin.frontend.di.configureModule
import org.jetbrains.kotlin.platform.konan.NativePlatforms
import org.jetbrains.kotlin.resolve.*
import org.jetbrains.kotlin.resolve.konan.platform.NativePlatformAnalyzerServices
import org.jetbrains.kotlin.resolve.lazy.BasicAbsentDescriptorHandler
import org.jetbrains.kotlin.resolve.lazy.KotlinCodeAnalyzer
import org.jetbrains.kotlin.resolve.lazy.ResolveSession
import org.jetbrains.kotlin.resolve.lazy.declarations.DeclarationProviderFactory
@@ -29,7 +30,10 @@ fun createTopDownAnalyzerProviderForKonan(
initContainer: StorageComponentContainer.() -> Unit
): ComponentProvider {
return createContainer("TopDownAnalyzerForKonan", NativePlatformAnalyzerServices) {
configureModule(moduleContext, NativePlatforms.unspecifiedNativePlatform, NativePlatformAnalyzerServices, bindingTrace, languageVersionSettings)
configureModule(moduleContext, NativePlatforms.unspecifiedNativePlatform, NativePlatformAnalyzerServices, bindingTrace,
languageVersionSettings,
optimizingOptions = null,
absentDescriptorHandlerClass = BasicAbsentDescriptorHandler::class.java)
useInstance(declarationProviderFactory)
useImpl<AnnotationResolverImpl>()