semver_core
Source-derived package reference
Browse namespaces and declarations, or search names, types and documentation. All artifacts work offline.
lain_semver_core
Structs
struct lain_semver_core::VersionA borrowed view. The caller owns the source bytes and must keep them alive. Only values returned with ok=true are valid inputs to compare_precedence.
Functions
fn lain_semver_core::compare_precedence(a: lain_semver_core::Version, b: lain_semver_core::Version) -> i64SemVer precedence, equivalent to Rust Version::cmp_precedence, NOT its total Ord/Eq over build metadata. Returns exactly -1, 0, or 1.
fn lain_semver_core::digit(c: u8) -> boolfn lain_semver_core::identifier_order(a: const u8[:], b: const u8[:]) -> i64fn lain_semver_core::identifiers_ok(text: const u8[:], pre: bool) -> boolfn lain_semver_core::number(text: const u8[:], pos: i64&) -> u64, boolCheck before arithmetic: release wrapping and debug overflow both stay safe.
fn lain_semver_core::numeric(text: const u8[:]) -> boolfn lain_semver_core::order(a: u64, b: u64) -> i64fn lain_semver_core::parse(text: const u8[:]) -> lain_semver_core::Version, boolStrict three-component ASCII SemVer. On failure the result is a zero/empty sentinel; inspect ok before using it. No allocation, input mutation or globals.
fn lain_semver_core::split_once(text: const u8[:], separator: u8) -> const u8[:], const u8[:], boolBoth views always borrow text, even when no separator is present. The bool distinguishes an absent field from a present-but-empty field.
Documentation scope
Global namespaces; no Rust-style package visibility. export fn marks a native interface.
- Only top-level functions, structs, enums, aliases, globals and named fields/variants are indexed. Nested functions, padding and compiler builtins are omitted.
- Namespaces are grouping metadata; namespace documentation and import aliases are not declaration items.
- Signatures use the LSP type renderer: resolved alias uses may expand and parameter/field defaults render as '= ...'. Linked source retains original spelling.
- Missing result annotations remain unspecified, untyped parameters have null types. No inferred lifetimes, visibility or constraints are invented.
- Markdown renders paragraphs, headings, fenced code, unordered lists, emphasis, inline code and explicit links. Raw HTML, tables and automatic reference links are not rendered.
- Search is lexical substring matching with AND filters, not fuzzy matching, type unification, signature solving or semantic search.