lunatic_version_api/
lib.rs

1use wasmtime::Linker;
2
3/// Links the `version` APIs.
4pub fn register<T>(linker: &mut Linker<T>) -> anyhow::Result<()> {
5    linker.func_wrap("lunatic::version", "major", major)?;
6    linker.func_wrap("lunatic::version", "minor", minor)?;
7    linker.func_wrap("lunatic::version", "patch", patch)?;
8    Ok(())
9}
10
11fn major() -> u32 {
12    env!("CARGO_PKG_VERSION_MAJOR").parse::<u32>().unwrap()
13}
14
15fn minor() -> u32 {
16    env!("CARGO_PKG_VERSION_MINOR").parse::<u32>().unwrap()
17}
18
19fn patch() -> u32 {
20    env!("CARGO_PKG_VERSION_PATCH").parse::<u32>().unwrap()
21}