From 9be3d90cb6327a6339e0e17dd3cc596dc5a3dd3f Mon Sep 17 00:00:00 2001 From: Dmitry Savvinov Date: Fri, 17 May 2019 13:22:58 +0300 Subject: [PATCH] [Compatibility] Restore KotlinProjectConfugirator.getTargetPlatform() Original commit: 716e55d17131418e628476fc1170502b99c77e56 --- .../kotlin/platform/compat/compatConversions.kt | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/jps/jps-common/src/org/jetbrains/kotlin/platform/compat/compatConversions.kt b/jps/jps-common/src/org/jetbrains/kotlin/platform/compat/compatConversions.kt index eb9b00e02bd..07ae0b6c4b0 100644 --- a/jps/jps-common/src/org/jetbrains/kotlin/platform/compat/compatConversions.kt +++ b/jps/jps-common/src/org/jetbrains/kotlin/platform/compat/compatConversions.kt @@ -32,6 +32,21 @@ fun NewPlatform.toOldPlatform(): OldPlatform = when (val single = singleOrNull() else -> error("Unknown platform $single") } +fun OldPlatform.toNewPlatform(): NewPlatform = when (this) { + is CommonPlatforms.CompatCommonPlatform -> this + is JvmPlatforms.CompatJvmPlatform -> this + is JsPlatforms.CompatJsPlatform -> this + is KonanPlatforms.CompatKonanPlatform -> this + else -> error( + "Can't convert org.jetbrains.kotlin.resolve.TargetPlatform to org.jetbrains.kotlin.platform.TargetPlatform: " + + "non-Compat instance passed\n" + + "toString: $this\n" + + "class: ${this::class}\n" + + "hashCode: ${this.hashCode().toString(16)}" + ) +} + + fun IdePlatform<*, *>.toNewPlatform(): NewPlatform = when (this) { is CommonIdePlatformKind.Platform -> CommonPlatforms.defaultCommonPlatform is JvmIdePlatformKind.Platform -> JvmPlatforms.jvmPlatformByTargetVersion(this.version)