#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[non_exhaustive]
pub enum Unit {
Celsius,
Percentage,
ArcDegrees,
Lux,
Seconds,
Ppm,
MicrogramsPerM3,
}
impl Unit {
pub fn as_str(self) -> &'static str {
match self {
Unit::Celsius => "celsius",
Unit::Percentage => "percentage",
Unit::ArcDegrees => "arcdegrees",
Unit::Lux => "lux",
Unit::Seconds => "seconds",
Unit::Ppm => "ppm",
Unit::MicrogramsPerM3 => "micrograms/m^3",
}
}
}
#[cfg(test)]
mod tests {
use super::Unit;
#[test]
fn wire_spelling() {
assert_eq!(Unit::Celsius.as_str(), "celsius");
assert_eq!(Unit::MicrogramsPerM3.as_str(), "micrograms/m^3");
}
}