semver

std.types.semver

rec Semver

pub rec Semver;

符合 SemVer 2.0.0 规范的语义化版本

major:主版本号 minor:次版本号 patch:修订版本号 prerelease:可选的预发布标识符(例如 "alpha.1"build:可选的构建元数据

fun semver_parse

pub fun semver_parse(input: str, a: *allocator.Allocator) Result[Semver, str];

将版本字符串解析为 Semver

input:版本字符串(major.minor.patch[-prerelease][+build]a:用于预发布/构建子字符串副本的分配器 ret:解析后的版本,或错误消息

fun semver_is_valid

pub fun semver_is_valid(v: *Semver) bool;

验证 Semver 是否格式良好

fun semver_compare

pub fun semver_compare(v: *Semver, other: *Semver) i64;

比较两个语义化版本的优先级(忽略构建元数据)

v:第一个版本 other:要与之比较的版本 ret:若 v < other 返回 <0,相等返回 0,若 v > other 返回 >0

fun semver_is_less

pub fun semver_is_less(v: *Semver, other: *Semver) bool;

检查 v 是否小于 other

fun semver_is_greater

pub fun semver_is_greater(v: *Semver, other: *Semver) bool;

检查 v 是否大于 other

fun semver_equals

pub fun semver_equals(v: *Semver, other: *Semver) bool;

检查两个版本是否相等(忽略构建元数据)

fun semver_is_stable

pub fun semver_is_stable(v: *Semver) bool;

检查 v 是否为稳定版本

fun semver_is_prerelease

pub fun semver_is_prerelease(v: *Semver) bool;

检查 v 是否为预发布版本

fun semver_has_build

pub fun semver_has_build(v: *Semver) bool;

检查 v 是否包含构建元数据