[LL] Use package provider to check for existing package

KT-59793
This commit is contained in:
Pavel Kirpichenkov
2023-07-24 16:46:48 +03:00
committed by teamcity
parent 7884b5fecf
commit ef6375f627
6 changed files with 45 additions and 21 deletions
@@ -17,7 +17,6 @@ import com.intellij.psi.PsiManager
import com.intellij.psi.SingleRootFileViewProvider
import com.intellij.psi.search.GlobalSearchScope
import com.intellij.psi.stubs.StubElement
import com.intellij.util.containers.CollectionFactory.createConcurrentWeakValueMap
import com.intellij.util.indexing.FileContent
import com.intellij.util.indexing.FileContentImpl
import com.intellij.util.io.URLUtil
@@ -135,6 +134,7 @@ public class KotlinStaticDeclarationProviderFactory(
private val psiManager = PsiManager.getInstance(project)
private val builtInDecompiler = KotlinBuiltInDecompiler()
private val createdFakeKtFiles = mutableListOf<KtFile>()
private fun loadBuiltIns(): Collection<KotlinFileStubImpl> {
val classLoader = this::class.java.classLoader
@@ -170,6 +170,7 @@ public class KotlinStaticDeclarationProviderFactory(
override fun isPhysical() = false
}
ktFileStub.psi = fakeFile
createdFakeKtFiles.add(fakeFile)
return ktFileStub
}
@@ -343,6 +344,7 @@ public class KotlinStaticDeclarationProviderFactory(
override fun isPhysical() = false
}
stub.psi = fakeFile
createdFakeKtFiles.add(fakeFile)
processStub(stub)
}
}
@@ -356,6 +358,10 @@ public class KotlinStaticDeclarationProviderFactory(
override fun createDeclarationProvider(scope: GlobalSearchScope, contextualModule: KtModule?): KotlinDeclarationProvider {
return KotlinStaticDeclarationProvider(index, scope)
}
public fun getAdditionalCreatedKtFiles(): List<KtFile> {
return createdFakeKtFiles
}
}
/**