Refactor BinaryVersion and subclasses, get rid of static factories
This commit is contained in:
@@ -26,19 +26,15 @@ class KotlinJavascriptMetadata(val abiVersion: Int, val moduleName: String, val
|
||||
}
|
||||
|
||||
// TODO: move to JS modules
|
||||
class JsBinaryVersion protected constructor(
|
||||
major: Int, minor: Int, patch: Int, rest: List<Int>
|
||||
) : BinaryVersion(major, minor, patch, rest) {
|
||||
class JsBinaryVersion(vararg numbers: Int) : BinaryVersion(*numbers) {
|
||||
override fun isCompatible() = this.isCompatibleTo(INSTANCE)
|
||||
|
||||
companion object {
|
||||
@JvmField val INSTANCE = create(0, 3, 0)
|
||||
@JvmField
|
||||
val INSTANCE = JsBinaryVersion(0, 3, 0)
|
||||
|
||||
@JvmField val INVALID_VERSION = JsBinaryVersion.create(IntArray(0))
|
||||
|
||||
@JvmStatic fun create(version: IntArray) = create(version, ::JsBinaryVersion)
|
||||
|
||||
@JvmStatic fun create(major: Int, minor: Int, patch: Int) = create(major, minor, patch, ::JsBinaryVersion)
|
||||
@JvmField
|
||||
val INVALID_VERSION = JsBinaryVersion()
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user