aos_userland/versioning/src/lib.rs

21 lines
515 B
Rust

// ! A unified versioning system for Rust.
#![no_std]
use core::{fmt::Display, prelude::rust_2021::derive};
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, Hash, Serialize, Deserialize)]
pub struct Version {
pub major: u8,
pub minor: u8,
pub patch: u8,
}
impl Display for Version {
fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {
write!(f, "v{}.{}.{}", self.major, self.minor, self.patch)?;
Ok(())
}
}