Skip to main content

Semantic Version Library (Ver)

ver is a base type in Stof — every field below operates on a version like 1.2.3-release+build directly, no library prefix required on the value itself.

Reading Components

Ver.major(ver: ver) -> int

ver-major.stof
#[main]
fn main() {
  const ver = 1.2.3-release+build;
  pln(ver.major());
}
Output

Ver.minor(ver: ver) -> int

ver-minor.stof
#[main]
fn main() {
  const ver = 1.2.3-release+build;
  pln(ver.minor());
}
Output

Ver.patch(ver: ver) -> int

ver-patch.stof
#[main]
fn main() {
  const ver = 1.2.3-release+build;
  pln(ver.patch());
}
Output

Ver.release(ver: ver) -> str

ver-release.stof
#[main]
fn main() {
  const ver = 1.2.3-release+build;
  pln(ver.release());
}
Output

Ver.build(ver: ver) -> str

ver-build.stof
#[main]
fn main() {
  const ver = 1.2.3-release+build;
  pln(ver.build());
}
Output

Setting Components

Every setter below mutates the version in place.

Ver.set_major(ver: ver, val: int) -> void

ver-set-major.stof
#[main]
fn main() {
  const ver = 1.2.3-release+build;
  ver.set_major(4);
  pln(ver);
}
Output

Ver.set_minor(ver: ver, val: int) -> void

ver-set-minor.stof
#[main]
fn main() {
  const ver = 1.2.3-release+build;
  ver.set_minor(4);
  pln(ver);
}
Output

Ver.set_patch(ver: ver, val: int) -> void

ver-set-patch.stof
#[main]
fn main() {
  const ver = 1.2.3-release+build;
  ver.set_patch(4);
  pln(ver);
}
Output

Ver.set_release(ver: ver, val: str) -> void

ver-set-release.stof
#[main]
fn main() {
  const ver = 1.2.3-release+build;
  ver.set_release("modified");
  pln(ver);
}
Output

Ver.set_build(ver: ver, val: str) -> void

ver-set-build.stof
#[main]
fn main() {
  const ver = 1.2.3-release+build;
  ver.set_build("modified");
  pln(ver);
}
Output

Ver.clear_release(ver: ver) -> void

ver-clear-release.stof
#[main]
fn main() {
  const ver = 1.2.3-release+build;
  ver.clear_release();
  pln(ver);
}
Output

Ver.clear_build(ver: ver) -> void

ver-clear-build.stof
#[main]
fn main() {
  const ver = 1.2.3-release+build;
  ver.clear_build();
  pln(ver);
}
Output