[Commonizer] RootMerger: Change priorities for typeResolver

This will prioritize classifiers from the following sources
in the provided order

1) Classifiers from the target's modulesProvider
2) Classifiers from the traget's direct dependencies
3) Classifiers from the more common dependencies
This commit is contained in:
sebastian.sellmair
2021-03-23 13:14:28 +01:00
committed by Space
parent 914ce22f6b
commit 6e3b1fd919
@@ -5,10 +5,12 @@
package org.jetbrains.kotlin.commonizer.mergedtree.mergers
import org.jetbrains.kotlin.commonizer.*
import org.jetbrains.kotlin.commonizer.CommonizerParameters
import org.jetbrains.kotlin.commonizer.CommonizerTarget
import org.jetbrains.kotlin.commonizer.ModulesProvider
import org.jetbrains.kotlin.commonizer.mergedtree.*
import org.jetbrains.kotlin.commonizer.mergedtree.buildRootNode
import org.jetbrains.kotlin.commonizer.metadata.CirTypeResolver
import org.jetbrains.kotlin.commonizer.prettyName
import org.jetbrains.kotlin.storage.StorageManager
internal class RootMerger(
@@ -30,9 +32,9 @@ internal class RootMerger(
val (commonModuleInfos, missingModuleInfos) = allModuleInfos.partition { it.name in commonModuleNames }
val typeResolver = CirTypeResolver.create(
providedClassifiers = CirProvidedClassifiers.of(
classifiers.commonDependencies,
CirProvidedClassifiers.by(targetProvider.modulesProvider),
CirProvidedClassifiers.by(targetProvider.dependencyModulesProvider),
CirProvidedClassifiers.by(targetProvider.modulesProvider)
classifiers.commonDependencies
)
)
targetMerger.processTarget(