#![forbid(unsafe_code)]
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
pub struct RuntimeVersionInfo {
pub name: &'static str,
pub version: &'static str,
pub semver: &'static str,
pub source: &'static str,
pub git_commit: Option<&'static str>,
pub git_dirty: Option<bool>,
pub build_profile: &'static str,
}
#[must_use]
pub const fn runtime_version() -> &'static str {
crate::shared::version::runtime_version()
}
#[must_use]
pub const fn runtime_semver() -> &'static str {
crate::shared::version::runtime_semver()
}
#[must_use]
pub fn runtime_version_source() -> &'static str {
crate::shared::version::runtime_version_source()
}
#[must_use]
pub fn runtime_git_commit() -> Option<&'static str> {
crate::shared::version::runtime_git_commit()
}
#[must_use]
pub fn runtime_git_dirty() -> Option<bool> {
crate::shared::version::runtime_git_dirty()
}
#[must_use]
pub fn runtime_build_profile() -> &'static str {
crate::shared::version::runtime_build_profile()
}
#[must_use]
pub fn runtime_version_info() -> RuntimeVersionInfo {
let info = crate::shared::version::runtime_version_info();
RuntimeVersionInfo {
name: info.name,
version: info.version,
semver: info.semver,
source: info.source,
git_commit: info.git_commit,
git_dirty: info.git_dirty,
build_profile: info.build_profile,
}
}
#[must_use]
pub fn runtime_version_line() -> String {
crate::shared::version::runtime_version_line()
}