Introduce ModuleDescriptor.findImplementingDescriptor() via facets
This function is now used instead of allImplementingCompatibleModules, thus allowing it to be deleted together with allImplementingModules So #KT-17369 Fixed So #KT-17374 Fixed May fix also some other MPP issues
This commit is contained in:
@@ -118,7 +118,6 @@ class ResolverForProjectImpl<M : ModuleInfo>(
|
||||
moduleDescriptor.setDependencies(LazyModuleDependencies(
|
||||
projectContext.storageManager,
|
||||
module,
|
||||
modulePlatforms,
|
||||
firstDependency,
|
||||
this))
|
||||
|
||||
@@ -270,7 +269,6 @@ abstract class AnalyzerFacade {
|
||||
class LazyModuleDependencies<M: ModuleInfo>(
|
||||
storageManager: StorageManager,
|
||||
private val module: M,
|
||||
modulePlatforms: (M) -> MultiTargetPlatform?,
|
||||
firstDependency: M? = null,
|
||||
private val resolverForProject: ResolverForProjectImpl<M>
|
||||
) : ModuleDependencies {
|
||||
@@ -292,14 +290,6 @@ class LazyModuleDependencies<M: ModuleInfo>(
|
||||
}.toList()
|
||||
}
|
||||
|
||||
private val implementingModules = storageManager.createLazyValue {
|
||||
if (modulePlatforms(module) != MultiTargetPlatform.Common) emptySet<M>()
|
||||
else resolverForProject.modules
|
||||
.filterTo(mutableSetOf()) {
|
||||
modulePlatforms(it) != MultiTargetPlatform.Common && module in it.dependencies()
|
||||
}
|
||||
}
|
||||
|
||||
override val allDependencies: List<ModuleDescriptorImpl> get() = dependencies()
|
||||
|
||||
override val modulesWhoseInternalsAreVisible: Set<ModuleDescriptorImpl>
|
||||
@@ -308,8 +298,6 @@ class LazyModuleDependencies<M: ModuleInfo>(
|
||||
resolverForProject.descriptorForModule(it as M)
|
||||
}
|
||||
|
||||
override val allImplementingModules: Set<ModuleDescriptorImpl>
|
||||
get() = implementingModules().mapTo(mutableSetOf()) { resolverForProject.descriptorForModule(it) }
|
||||
}
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user