Merge pull request #10 from SwiftPackageIndex/remove-copyright-years Remove year from all copyright notices
Merge pull request #10 from SwiftPackageIndex/remove-copyright-years
Remove year from all copyright notices
SemanticVersion is a simple Codable, Comparable, Equatable, Hashable, and LosslessStringConvertible struct that can represent semantic versions.
Codable
Comparable
Equatable
Hashable
LosslessStringConvertible
Here’s what using SemanticVersion looks like in practise:
SemanticVersion
import SemanticVersion import Foundation // Query semantic version components let v123 = SemanticVersion(1, 2, 3) v123.isStable // true v123.isPreRelease // false v123.isMajorRelease // false v123.isMinorRelease // false v123.isPatchRelease // true // Parse semantic version from String let v200 = SemanticVersion("2.0.0")! v200.isStable // true v200.isPreRelease // false v200.isMajorRelease // true v200.isMinorRelease // false v200.isPatchRelease // false // Supports beta versions let v300rc1 = SemanticVersion("3.0.0-rc1-test")! v300rc1.isStable // false v300rc1.isPreRelease // true v300rc1.isMajorRelease // false v300rc1.isMinorRelease // false v300rc1.isPatchRelease // false v300rc1.major // 3 v300rc1.minor // 0 v300rc1.patch // 0 v300rc1.preRelease // "rc1-test" // SemanticVersion is Comparable and Equatable v123 < v200 // true SemanticVersion("2.0.0")! < SemanticVersion("2.0.1")! // true // NB: beta versions come before their releases SemanticVersion("2.0.0")! > SemanticVersion("2.0.0-b1")! // true v123 == SemanticVersion("1.2.3") // true SemanticVersion("v1.2.3-beta1+build5") == SemanticVersion(1, 2, 3, "beta1", "build5") // true // SemanticVersion is Hashable let dict = [ // [{major 3, minor 0, patch 0,... v123: 1, v200: 2, v300rc1: 3 ] // SemanticVersion is Codable let data = try JSONEncoder().encode(v123) // 58 bytes let decoded = try JSONDecoder().decode(SemanticVersion.self, from: data) // 1.2.3 decoded == v123 // true
©Copyright 2023 CCF 开源发展委员会 Powered by Trustie& IntelliDE 京ICP备13000930号
🏷 SemanticVersion
SemanticVersion is a simple
Codable
,Comparable
,Equatable
,Hashable
, andLosslessStringConvertible
struct that can represent semantic versions.Here’s what using
SemanticVersion
looks like in practise: