[KPM] Replace .containingModule.variantsContainingFragment with .containingVariants
KT-51386
This commit is contained in:
committed by
Space
parent
f65c61472b
commit
588ea65d66
+2
-6
@@ -6,10 +6,7 @@
|
|||||||
package org.jetbrains.kotlin.gradle.kpm.idea
|
package org.jetbrains.kotlin.gradle.kpm.idea
|
||||||
|
|
||||||
import org.jetbrains.kotlin.gradle.kpm.KotlinExternalModelContainer
|
import org.jetbrains.kotlin.gradle.kpm.KotlinExternalModelContainer
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinGradleFragment
|
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.*
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinGradleFragmentInternal
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.KotlinGradleVariant
|
|
||||||
import org.jetbrains.kotlin.gradle.plugin.mpp.pm20.variantsContainingFragment
|
|
||||||
|
|
||||||
internal class IdeaKotlinFragmentBuildingContext(
|
internal class IdeaKotlinFragmentBuildingContext(
|
||||||
private val parent: IdeaKotlinProjectModelBuildingContext
|
private val parent: IdeaKotlinProjectModelBuildingContext
|
||||||
@@ -29,8 +26,7 @@ private fun IdeaKotlinFragmentBuildingContext.buildIdeaKotlinFragment(fragment:
|
|||||||
return IdeaKotlinFragmentImpl(
|
return IdeaKotlinFragmentImpl(
|
||||||
name = fragment.name,
|
name = fragment.name,
|
||||||
moduleIdentifier = fragment.containingModule.moduleIdentifier.toIdeaKotlinModuleIdentifier(),
|
moduleIdentifier = fragment.containingModule.moduleIdentifier.toIdeaKotlinModuleIdentifier(),
|
||||||
platforms = fragment.containingModule.variantsContainingFragment(fragment)
|
platforms = fragment.containingVariants.map { variant -> buildIdeaKotlinPlatform(variant) }.toSet(),
|
||||||
.map { variant -> buildIdeaKotlinPlatform(variant) }.toSet(),
|
|
||||||
languageSettings = fragment.languageSettings.toIdeaKotlinLanguageSettings(),
|
languageSettings = fragment.languageSettings.toIdeaKotlinLanguageSettings(),
|
||||||
dependencies = dependencyResolver.resolve(fragment).toList(),
|
dependencies = dependencyResolver.resolve(fragment).toList(),
|
||||||
directRefinesDependencies = fragment.directRefinesDependencies.map { refinesFragment -> toIdeaKotlinFragment(refinesFragment) },
|
directRefinesDependencies = fragment.directRefinesDependencies.map { refinesFragment -> toIdeaKotlinFragment(refinesFragment) },
|
||||||
|
|||||||
+3
-3
@@ -121,7 +121,7 @@ internal open class KotlinCommonFragmentMetadataCompilationDataImpl(
|
|||||||
|
|
||||||
override val isActive: Boolean
|
override val isActive: Boolean
|
||||||
get() = !fragment.isNativeShared() &&
|
get() = !fragment.isNativeShared() &&
|
||||||
fragment.containingModule.variantsContainingFragment(fragment).run {
|
fragment.containingVariants.run {
|
||||||
!all { it.platformType in setOf(KotlinPlatformType.androidJvm, KotlinPlatformType.jvm) } &&
|
!all { it.platformType in setOf(KotlinPlatformType.androidJvm, KotlinPlatformType.jvm) } &&
|
||||||
mapTo(hashSetOf()) { it.platformType }.size > 1
|
mapTo(hashSetOf()) { it.platformType }.size > 1
|
||||||
}
|
}
|
||||||
@@ -161,14 +161,14 @@ internal open class KotlinNativeFragmentMetadataCompilationDataImpl(
|
|||||||
get() = lowerCamelCaseName("compile", fragment.disambiguateName(""), "KotlinNativeMetadata")
|
get() = lowerCamelCaseName("compile", fragment.disambiguateName(""), "KotlinNativeMetadata")
|
||||||
|
|
||||||
override val isActive: Boolean
|
override val isActive: Boolean
|
||||||
get() = fragment.isNativeShared() && fragment.containingModule.variantsContainingFragment(fragment).count() > 1
|
get() = fragment.isNativeShared() && fragment.containingVariants.count() > 1
|
||||||
|
|
||||||
override val kotlinOptions: NativeCompileOptions = NativeCompileOptions { languageSettings }
|
override val kotlinOptions: NativeCompileOptions = NativeCompileOptions { languageSettings }
|
||||||
|
|
||||||
override val konanTarget: KonanTarget
|
override val konanTarget: KonanTarget
|
||||||
get() {
|
get() {
|
||||||
val nativeVariants =
|
val nativeVariants =
|
||||||
fragment.containingModule.variantsContainingFragment(fragment).filterIsInstance<KotlinNativeVariantInternal>()
|
fragment.containingVariants.filterIsInstance<KotlinNativeVariantInternal>()
|
||||||
return nativeVariants.firstOrNull { it.konanTarget.enabledOnCurrentHost }?.konanTarget
|
return nativeVariants.firstOrNull { it.konanTarget.enabledOnCurrentHost }?.konanTarget
|
||||||
?: nativeVariants.firstOrNull()?.konanTarget
|
?: nativeVariants.firstOrNull()?.konanTarget
|
||||||
?: HostManager.host
|
?: HostManager.host
|
||||||
|
|||||||
+2
-2
@@ -42,7 +42,7 @@ internal open class TransformKotlinGranularMetadataForFragment
|
|||||||
@get:Input
|
@get:Input
|
||||||
internal val inputFragmentsAndVariants: Map<String, Iterable<String>> by project.provider {
|
internal val inputFragmentsAndVariants: Map<String, Iterable<String>> by project.provider {
|
||||||
val participatingFragments = fragment.refinesClosure
|
val participatingFragments = fragment.refinesClosure
|
||||||
participatingFragments.associateWith { it.containingModule.variantsContainingFragment(it) }
|
participatingFragments.associateWith { it.containingVariants }
|
||||||
.entries.associate { (fragment, variants) ->
|
.entries.associate { (fragment, variants) ->
|
||||||
fragment.name to variants.map { it.fragmentName }.sorted()
|
fragment.name to variants.map { it.fragmentName }.sorted()
|
||||||
}
|
}
|
||||||
@@ -52,7 +52,7 @@ internal open class TransformKotlinGranularMetadataForFragment
|
|||||||
@get:Input
|
@get:Input
|
||||||
internal val inputVariantDependencies: Map<String, Set<List<String?>>> by project.provider {
|
internal val inputVariantDependencies: Map<String, Set<List<String?>>> by project.provider {
|
||||||
val participatingFragments = fragment.refinesClosure
|
val participatingFragments = fragment.refinesClosure
|
||||||
val participatingCompilations = participatingFragments.flatMap { it.containingModule.variantsContainingFragment(it) }
|
val participatingCompilations = participatingFragments.flatMap { it.containingVariants }
|
||||||
participatingCompilations.associate { variant ->
|
participatingCompilations.associate { variant ->
|
||||||
variant.fragmentName to variant.compileDependenciesConfiguration
|
variant.fragmentName to variant.compileDependenciesConfiguration
|
||||||
.allDependencies.map { listOf(it.group, it.name, it.version) }.toSet()
|
.allDependencies.map { listOf(it.group, it.name, it.version) }.toSet()
|
||||||
|
|||||||
+1
-1
@@ -283,7 +283,7 @@ private fun disableMetadataCompilationIfNotYetSupported(
|
|||||||
metadataCompilationData: AbstractKotlinFragmentMetadataCompilationData<*>
|
metadataCompilationData: AbstractKotlinFragmentMetadataCompilationData<*>
|
||||||
) {
|
) {
|
||||||
val fragment = metadataCompilationData.fragment
|
val fragment = metadataCompilationData.fragment
|
||||||
val platforms = fragment.containingModule.variantsContainingFragment(fragment).map { it.platformType }.toSet()
|
val platforms = fragment.containingVariants.map { it.platformType }.toSet()
|
||||||
if (platforms != setOf(KotlinPlatformType.native) && platforms.size == 1
|
if (platforms != setOf(KotlinPlatformType.native) && platforms.size == 1
|
||||||
|| platforms == setOf(KotlinPlatformType.jvm, KotlinPlatformType.androidJvm)
|
|| platforms == setOf(KotlinPlatformType.jvm, KotlinPlatformType.androidJvm)
|
||||||
) {
|
) {
|
||||||
|
|||||||
Reference in New Issue
Block a user