egml_core/model/measures/speed.rs
1use crate::impl_measure_type;
2use crate::model::basic_types::Measure;
3
4/// A speed (velocity magnitude) quantity with its unit of measure.
5///
6/// Corresponds to `gml:SpeedType` in ISO 19136 — a vacuous extension of
7/// `gml:MeasureType`. The unit referenced by `uom` should be suitable for a
8/// speed, such as metres per second.
9///
10/// # Examples
11///
12/// ```rust
13/// use egml_core::model::measures::Speed;
14///
15/// let velocity = Speed::new(2.5, "m/s");
16/// assert_eq!(velocity.value(), 2.5);
17/// ```
18#[derive(Debug, Clone, PartialEq, PartialOrd)]
19pub struct Speed(Measure);
20
21impl_measure_type!(Speed);