[FIR] Type "top-level classifier names in package" as Name
- This is more consistent with "top-level callable names in package" and simplifies the set construction quite a bit, as we can avoid a lot of `asString` conversions.
This commit is contained in:
committed by
Space Team
parent
8034d522b9
commit
efe587691b
+6
-3
@@ -94,8 +94,11 @@ abstract class AbstractFirDeserializedSymbolProvider(
|
||||
}
|
||||
|
||||
override val symbolNamesProvider: FirSymbolNamesProvider = object : FirCachedSymbolNamesProvider(session) {
|
||||
override fun computeTopLevelClassifierNames(packageFqName: FqName): Set<String>? {
|
||||
val classesInPackage = knownTopLevelClassesInPackage(packageFqName) ?: return null
|
||||
override fun computeTopLevelClassifierNames(packageFqName: FqName): Set<Name>? {
|
||||
val classesInPackage = knownTopLevelClassesInPackage(packageFqName)
|
||||
?.mapTo(mutableSetOf()) { Name.identifier(it) }
|
||||
?.ifEmpty { emptySet() }
|
||||
?: return null
|
||||
|
||||
if (packageFqName.asString() !in packageNamesForNonClassDeclarations) return classesInPackage
|
||||
|
||||
@@ -104,7 +107,7 @@ abstract class AbstractFirDeserializedSymbolProvider(
|
||||
|
||||
return buildSet {
|
||||
addAll(classesInPackage)
|
||||
typeAliasNames.mapTo(this) { it.asString() }
|
||||
addAll(typeAliasNames)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
+2
-2
@@ -88,9 +88,9 @@ open class FirBuiltinSymbolProvider(
|
||||
override fun getPackageNamesWithTopLevelCallables(): Set<String> =
|
||||
allPackageFragments.keys.mapTo(mutableSetOf()) { it.asString() }
|
||||
|
||||
override fun getTopLevelClassifierNamesInPackage(packageFqName: FqName): Set<String> =
|
||||
override fun getTopLevelClassifierNamesInPackage(packageFqName: FqName): Set<Name> =
|
||||
allPackageFragments[packageFqName]?.flatMapTo(mutableSetOf()) { fragment ->
|
||||
fragment.classDataFinder.allClassIds.map { it.shortClassName.asString() }
|
||||
fragment.classDataFinder.allClassIds.map { it.shortClassName }
|
||||
}.orEmpty()
|
||||
|
||||
override fun getTopLevelCallableNamesInPackage(packageFqName: FqName): Set<Name> =
|
||||
|
||||
Reference in New Issue
Block a user