Refactor deprecation by version requirement

- Get rid of ApiVersion in favor of MavenComparableVersion
- Don't crash on invalid versions in RequireKotlin
- Extract to a separate function
This commit is contained in:
Alexander Udalov
2018-02-28 14:23:05 +01:00
parent 90802f2d7c
commit bbaea6a062
2 changed files with 30 additions and 26 deletions
@@ -16,7 +16,6 @@
package org.jetbrains.kotlin.config
import org.jetbrains.kotlin.serialization.deserialization.descriptors.VersionRequirement
import org.jetbrains.kotlin.utils.DescriptionAware
class ApiVersion private constructor(
@@ -59,10 +58,6 @@ class ApiVersion private constructor(
@JvmStatic
fun createByLanguageVersion(version: LanguageVersion): ApiVersion = parse(version.versionString)!!
@JvmStatic
fun createByVersionRequirement(versionRequirement: VersionRequirement): ApiVersion =
versionRequirement.version.let { version -> parse(version.asString()) ?: error("Could not parse version: $version") }
fun parse(versionString: String): ApiVersion? = try {
ApiVersion(MavenComparableVersion(versionString), versionString)
}