yaum
macro_rules! impl_unit { ($type:ident) => { ... }; ($type:ident, { $( $unit:ident: $value:expr ),* }) => { ... }; ($type:ident, $basetype:ty, {$( $unit:ident: $value:expr ),*}) => { ... }; }
Define a unit. Specify units, constants in brackets.
#[macro_use] extern crate yaum; use yaum::*; yaum::impl_unit!(BitSize, { b: 1.0, kb: 1024.0, Mb: 1024.0 * 1024.0 });