[][src]Crate tiny_uom

tiny-uom is a small version of the uom library.

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

#![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));

Modules

units

All SI base units and more constants.

values

All SI base units but wrapped in Quantity with value 1.0.

Structs

Quantity

A Quantity represents a raw value and it's unit that is represented as a const generic parameter.

Unit

The Unit struct can represent every possible unit that is defined in the SI system.