Implement SubpackagesIndexService#hasSubPackages()
Use it in PackageIndexUtil#packageExists()
This commit is contained in:
@@ -52,7 +52,8 @@ public final class PackageIndexUtil {
|
||||
@NotNull GlobalSearchScope searchScope,
|
||||
@NotNull Project project
|
||||
) {
|
||||
return containsAny(packageFqName, searchScope, project, JetAllPackagesIndex.getInstance().getKey());
|
||||
return containsAny(packageFqName, searchScope, project, JetExactPackagesIndex.getInstance().getKey())
|
||||
|| SubpackagesIndexService.OBJECT$.getInstance(project).hasSubpackages(packageFqName, searchScope);
|
||||
}
|
||||
|
||||
public static boolean containsAny(
|
||||
|
||||
@@ -53,6 +53,12 @@ public class SubpackagesIndexService(private val project: Project) {
|
||||
}
|
||||
}
|
||||
|
||||
public fun hasSubpackages(fqName: FqName, scope: GlobalSearchScope): Boolean {
|
||||
return fqNameByPrefix[fqName].any { packageWithFilesFqName ->
|
||||
PackageIndexUtil.containsAny(packageWithFilesFqName, scope, project, JetExactPackagesIndex.getInstance().getKey())
|
||||
}
|
||||
}
|
||||
|
||||
public fun getSubpackages(fqName: FqName, scope: GlobalSearchScope): Collection<FqName> {
|
||||
val possibleFilesFqNames = fqNameByPrefix[fqName]
|
||||
val existingSubPackagesShortNames = HashSet<Name>()
|
||||
|
||||
Reference in New Issue
Block a user