1 unstable release
0.1.0 | Nov 29, 2020 |
---|
#846 in Science
14KB
251 lines
tiny-uom
smol and fast version of uom
Documentation | Crate | Examples
This crate is mostly based on this proof-of-concept using const generics.
tiny-uom
is a port of uom
to use const generics and to be a faster and smaller version.
It provides type-safe and zero-cost dimensional-analysis.
tiny-uom
provides all units that are specified in the International System of Units
and all quantities that are specified in the International System of Quantities.
Usage
tiny-uom
requires nightly Rust compiler (currently it's always tested with nightly-2020-11-25
).
Add this your Cargo.toml
:
[dependencies]
tiny-uom = "0.1.0"
#![feature(const_generics, const_evaluatable_checked)]
#![allow(incomplete_features)]
use tiny_uom::values::{kg, m, s};
let distance = 10.0 * m;
let time = 2.0 * s;
let velocity = distance / time;
assert_eq!(velocity, 5.0 * (m / s));
License
This project is licensed under the MIT license