Shrewnit also provides APIs for extending existing dimensions with new units, or adding new dimensions entirely.
Units can be created in two ways: ```rust // Multiplication: let quantity: Length<f32> = 1.0 * Inches; let quantity = 1.0f32 * Inches;
// Extension trait:
let quantity: Length<f32> = 1.0.inches();
let quantity = 1.0f32.inches();
```
Unit math works as you would expect:
```rust
let velocity = 12.0f64 * MetersPerSecond;
let time = 3.0 * Seconds; let displacement = velocity * time;
println!("{}", displacement.to::<Inches>());
```