Skip to main content

si_vectors/si_unit/
mod.rs

1
2use core::fmt;
3#[derive(Debug,Hash,PartialEq,Eq,Clone,Copy,PartialOrd,Ord)]
4
5/// Si units enum 
6pub enum SiUnit {
7
8    ///Metres
9    Metre,
10
11    ///Seconds
12    Second,
13
14    ///Kilogram
15    Kilogram,
16
17    ///Ampere
18    Ampere,
19
20    ///Kelvin
21    Kelvin,
22
23    ///Mole
24    Mole,
25
26    ///Candela
27    Candela
28}
29
30
31///Implement Display
32///
33/// ```rust
34/// let kg = SiUnit::Kilogram;
35/// println!("{}", kg);
36/// ```
37impl fmt::Display for SiUnit {
38    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
39        match self {
40            SiUnit::Kilogram => write!(f,"Kilogram"),
41            SiUnit::Metre => write!(f,"Metre"),
42            SiUnit::Second => write!(f,"Second"),
43            SiUnit::Ampere => write!(f,"Ampere"),
44            SiUnit::Kelvin => write!(f,"Kelvin"),
45            SiUnit::Mole => write!(f,"Mole"),
46            SiUnit::Candela => write!(f,"Candela")
47        }
48        
49    }
50}