Conform Version to Comparable

This commit is contained in:
Brentley Jones
2018-08-02 07:19:37 -05:00
parent 245d8f912d
commit 641ce7ccd8
+8 -2
View File
@@ -1,7 +1,7 @@
import Foundation
public struct Version: CustomStringConvertible, Equatable {
public struct Version: CustomStringConvertible, Equatable, Comparable {
public var major: UInt
public var minor: UInt
public var patch: UInt
@@ -47,4 +47,10 @@ public struct Version: CustomStringConvertible, Equatable {
public func bumpingPatch() -> Version {
return Version(major: major, minor: minor, patch: patch + 1)
}
public static func < (lhs: Version, rhs: Version) -> Bool {
guard lhs.major == rhs.major else { return lhs.major < rhs.major }
guard lhs.minor == rhs.minor else { return lhs.minor < rhs.minor }
return lhs.patch < rhs.patch
}
}