Value classes: Add isValue property to class descriptors
Reuse isInline flag in proto and IR. Check metadata version on deserialization.
This commit is contained in:
@@ -48,6 +48,19 @@ abstract class BinaryVersion(private vararg val numbers: Int) {
|
||||
return this.patch >= patch
|
||||
}
|
||||
|
||||
fun isAtMost(version: BinaryVersion): Boolean =
|
||||
isAtMost(version.major, version.minor, version.patch)
|
||||
|
||||
fun isAtMost(major: Int, minor: Int, patch: Int): Boolean {
|
||||
if (this.major < major) return true
|
||||
if (this.major > major) return false
|
||||
|
||||
if (this.minor < minor) return true
|
||||
if (this.minor > minor) return false
|
||||
|
||||
return this.patch <= patch
|
||||
}
|
||||
|
||||
override fun toString(): String {
|
||||
val versions = toArray().takeWhile { it != UNKNOWN }
|
||||
return if (versions.isEmpty()) "unknown" else versions.joinToString(".")
|
||||
|
||||
Reference in New Issue
Block a user