From a363a5be584e5cf01deac5cdbfec34a10be2a5a6 Mon Sep 17 00:00:00 2001 From: Dmitriy Dolovov Date: Tue, 24 Mar 2020 19:46:54 +0700 Subject: [PATCH] Gradle. Make nativeExtensions in KotlinCompilation optional --- .../idea/configuration/KotlinMPPGradleProjectResolver.kt | 2 +- idea/kotlin-gradle-tooling/src/KotlinMPPGradleModel.kt | 4 ++-- .../src/KotlinMPPGradleModelBuilder.kt | 2 +- idea/kotlin-gradle-tooling/src/KotlinMPPGradleModelImpl.kt | 6 +++--- 4 files changed, 7 insertions(+), 7 deletions(-) diff --git a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinMPPGradleProjectResolver.kt b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinMPPGradleProjectResolver.kt index 89aad6e2578..679c92fa467 100644 --- a/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinMPPGradleProjectResolver.kt +++ b/idea/idea-gradle/src/org/jetbrains/kotlin/idea/configuration/KotlinMPPGradleProjectResolver.kt @@ -492,7 +492,7 @@ open class KotlinMPPGradleProjectResolver : AbstractProjectResolverExtensionComp val substitutedDependencies: List ) { val konanTarget: String? - get() = compilation.nativeExtensions.konanTarget + get() = compilation.nativeExtensions?.konanTarget val dependencyNames: Map by lazy { substitutedDependencies.associateBy { it.name.removeSuffixIfPresent(" [$konanTarget]") } diff --git a/idea/kotlin-gradle-tooling/src/KotlinMPPGradleModel.kt b/idea/kotlin-gradle-tooling/src/KotlinMPPGradleModel.kt index 2f4d8b53162..a946418367d 100644 --- a/idea/kotlin-gradle-tooling/src/KotlinMPPGradleModel.kt +++ b/idea/kotlin-gradle-tooling/src/KotlinMPPGradleModel.kt @@ -94,7 +94,7 @@ interface KotlinCompilationArguments : Serializable { } interface KotlinNativeCompilationExtensions : Serializable { - val konanTarget: String? // represents org.jetbrains.kotlin.konan.target.KonanTarget + val konanTarget: String // represents org.jetbrains.kotlin.konan.target.KonanTarget } interface KotlinCompilation : KotlinModule { @@ -105,7 +105,7 @@ interface KotlinCompilation : KotlinModule { val disambiguationClassifier: String? val platform: KotlinPlatform val kotlinTaskProperties: KotlinTaskProperties - val nativeExtensions: KotlinNativeCompilationExtensions + val nativeExtensions: KotlinNativeCompilationExtensions? companion object { const val MAIN_COMPILATION_NAME = "main" diff --git a/idea/kotlin-gradle-tooling/src/KotlinMPPGradleModelBuilder.kt b/idea/kotlin-gradle-tooling/src/KotlinMPPGradleModelBuilder.kt index da0a83492c6..373509f7963 100644 --- a/idea/kotlin-gradle-tooling/src/KotlinMPPGradleModelBuilder.kt +++ b/idea/kotlin-gradle-tooling/src/KotlinMPPGradleModelBuilder.kt @@ -526,7 +526,7 @@ class KotlinMPPGradleModelBuilder : ModelBuilderService { it.invoke(konanTarget) as? String } } - val nativeExtensions = KotlinNativeCompilationExtensionsImpl(konanTarget) + val nativeExtensions = konanTarget?.let(::KotlinNativeCompilationExtensionsImpl) return KotlinCompilationImpl( gradleCompilation.name, diff --git a/idea/kotlin-gradle-tooling/src/KotlinMPPGradleModelImpl.kt b/idea/kotlin-gradle-tooling/src/KotlinMPPGradleModelImpl.kt index 0af4fc51449..a4ba166c8be 100644 --- a/idea/kotlin-gradle-tooling/src/KotlinMPPGradleModelImpl.kt +++ b/idea/kotlin-gradle-tooling/src/KotlinMPPGradleModelImpl.kt @@ -104,7 +104,7 @@ data class KotlinCompilationArgumentsImpl( } data class KotlinNativeCompilationExtensionsImpl( - override val konanTarget: String? = null + override val konanTarget: String ) : KotlinNativeCompilationExtensions { constructor(extensions: KotlinNativeCompilationExtensions) : this(extensions.konanTarget) } @@ -117,7 +117,7 @@ data class KotlinCompilationImpl( override val arguments: KotlinCompilationArguments, override val dependencyClasspath: Array, override val kotlinTaskProperties: KotlinTaskProperties, - override val nativeExtensions: KotlinNativeCompilationExtensions + override val nativeExtensions: KotlinNativeCompilationExtensions? ) : KotlinCompilation { // create deep copy @@ -133,7 +133,7 @@ data class KotlinCompilationImpl( KotlinCompilationArgumentsImpl(kotlinCompilation.arguments), kotlinCompilation.dependencyClasspath, KotlinTaskPropertiesImpl(kotlinCompilation.kotlinTaskProperties), - KotlinNativeCompilationExtensionsImpl(kotlinCompilation.nativeExtensions) + kotlinCompilation.nativeExtensions?.let(::KotlinNativeCompilationExtensionsImpl) ) { disambiguationClassifier = kotlinCompilation.disambiguationClassifier platform = kotlinCompilation.platform