[Analysis API] implement API to extend Kotlin resolution by generated declarations

^KT-57930 fixed
This commit is contained in:
Ilya Kirillov
2023-04-17 18:12:00 +02:00
committed by Space Team
parent 0dbc948616
commit d68587de77
12 changed files with 571 additions and 14 deletions
@@ -14,6 +14,8 @@ class KtStaticModuleProvider(
private val builtinsModule: KtBuiltinsModule,
val projectStructure: KtModuleProjectStructure,
) : ProjectStructureProvider() {
@OptIn(KtModuleStructureInternals::class)
override fun getKtModuleForKtElement(element: PsiElement): KtModule {
val containingFileAsPsiFile = element.containingFile
val containingFileAsVirtualFile = containingFileAsPsiFile.virtualFile
@@ -21,6 +23,8 @@ class KtStaticModuleProvider(
return builtinsModule
}
containingFileAsVirtualFile.analysisExtensionFileContextModule?.let { return it }
return projectStructure.mainModules
.first { module ->
element in module.ktModule.contentScope