Skip to main content

egml_core/model/measures/
time.rs

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