[AA] KT-58580 Add KotlinDeclarationProviderMerger
- A proper merging strategy for declaration providers is required for cases where the main declaration provider created by `createDeclarationProvider` can't provide all declarations that the original declaration providers can provide. Then, only a sublist of the declaration providers should be merged, while keeping the unmergeable declaration providers intact. ^KT-58580 fixed
This commit is contained in:
committed by
Space Team
parent
fba0648005
commit
915c412929
+1
@@ -141,6 +141,7 @@ public class StandaloneAnalysisAPISessionBuilder(
|
||||
kotlinCoreProjectEnvironment.environment.jarFileSystem as CoreJarFileSystem
|
||||
)
|
||||
)
|
||||
registerService(KotlinDeclarationProviderMerger::class.java, KotlinStaticDeclarationProviderMerger(this))
|
||||
registerService(KotlinPackageProviderFactory::class.java, KotlinStaticPackageProviderFactory(project, ktFiles))
|
||||
|
||||
registerService(KtAnalysisSessionProvider::class.java, KtFirAnalysisSessionProvider(this))
|
||||
|
||||
+4
@@ -159,6 +159,10 @@ internal fun configureProjectEnvironment(
|
||||
KotlinDeclarationProviderFactory::class.java,
|
||||
KotlinStaticDeclarationProviderFactory(project, ktFiles)
|
||||
)
|
||||
project.registerService(
|
||||
KotlinDeclarationProviderMerger::class.java,
|
||||
KotlinStaticDeclarationProviderMerger(project)
|
||||
)
|
||||
project.registerService(
|
||||
KotlinPackageProviderFactory::class.java,
|
||||
KotlinStaticPackageProviderFactory(project, ktFiles)
|
||||
|
||||
Reference in New Issue
Block a user