use-measure 0.1.0

Practical measurement and conversion primitives for RustUse.
Documentation
  • Coverage
  • 62.5%
    10 out of 16 items documented1 out of 9 items with examples
  • Size
  • Source code size: 6.95 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 388.33 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 17s Average build duration of successful builds.
  • all releases: 17s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • Homepage
  • RustUse/use-measure
    1 0 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • CloudBranch

use-measure

Practical measurement values and conversion helpers.

use-measure provides a lightweight Measurement type plus Conversion helpers for common linear and affine conversions. It is intended to be the practical layer that sits on top of lower-level unit descriptions.

What this crate provides

Item Purpose
Measurement Small value-plus-unit container
Conversion Linear or affine conversion definition
compose() Helper for chaining compatible conversions

Installation

[dependencies]
use-measure = "0.1.0"

Example

use use_measure::{compose, Conversion, Measurement};

let kilometers_to_meters = Conversion::linear("km", "m", 1_000.0);
let meters_to_centimeters = Conversion::linear("m", "cm", 100.0);
let kilometers_to_centimeters = compose(kilometers_to_meters, meters_to_centimeters).unwrap();

let distance = Measurement::new(1.2, "km");

assert_eq!(distance.convert(kilometers_to_centimeters), Some(Measurement::new(120_000.0, "cm")));

Scope

  • Explicit conversions only.
  • Simple, auditable arithmetic.
  • No automatic unit graph or uncertainty tracking yet.