[LL FIR] KTIJ-25536 Add callable package names workaround for LLFirProvider$SymbolProvider
- Sadly, the only way for now is to disable computation of the callable package names, which will negatively affect performance.
This commit is contained in:
committed by
Space Team
parent
a61c6f6502
commit
2540343159
+4
-1
@@ -83,7 +83,10 @@ internal class LLFirProviderHelper(
|
||||
val symbolNameCache = FirCompositeCachedSymbolNamesProvider.create(
|
||||
firSession,
|
||||
listOfNotNull(
|
||||
LLFirKotlinSymbolNamesProvider(declarationProvider),
|
||||
object : LLFirKotlinSymbolNamesProvider(declarationProvider) {
|
||||
// This is a temporary workaround for KTIJ-25536.
|
||||
override fun getPackageNamesWithTopLevelCallables(): Set<String>? = null
|
||||
},
|
||||
extensionTool?.symbolNamesProvider,
|
||||
)
|
||||
)
|
||||
|
||||
+2
-2
@@ -16,7 +16,7 @@ import org.jetbrains.kotlin.name.Name
|
||||
/**
|
||||
* A [FirSymbolNamesProvider] that fetches top-level names from a Kotlin [declarationProvider].
|
||||
*/
|
||||
internal class LLFirKotlinSymbolNamesProvider(
|
||||
internal open class LLFirKotlinSymbolNamesProvider(
|
||||
private val declarationProvider: KotlinDeclarationProvider,
|
||||
) : FirSymbolNamesProvider() {
|
||||
override fun getTopLevelClassifierNamesInPackage(packageFqName: FqName): Set<String> =
|
||||
@@ -24,7 +24,7 @@ internal class LLFirKotlinSymbolNamesProvider(
|
||||
.getTopLevelKotlinClassLikeDeclarationNamesInPackage(packageFqName)
|
||||
.mapTo(mutableSetOf()) { it.asString() }
|
||||
|
||||
override fun getPackageNamesWithTopLevelCallables(): Set<String> =
|
||||
override fun getPackageNamesWithTopLevelCallables(): Set<String>? =
|
||||
declarationProvider.computePackageSetWithTopLevelCallableDeclarations()
|
||||
|
||||
override fun getTopLevelCallableNamesInPackage(packageFqName: FqName): Set<Name> =
|
||||
|
||||
Reference in New Issue
Block a user