1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
/// Common Module

/// Maneuvering Condition
#[derive(Debug)]
pub enum ManCon {
    Unknown,
    None,
    Low,
    Medium,
    High,
    VeryHigh,
    Extreme,
    Neo
}

impl ManCon {
    pub fn string(&self) -> &str {
        match *self {
            ManCon::Unknown => "Unknown",
            ManCon::None => "None",
            ManCon::Low => "Low",
            ManCon::Medium => "Medium",
            ManCon::High => "High",
            ManCon::VeryHigh => "VeryHigh",
            ManCon::Extreme => "Extreme",
            ManCon::Neo => "Neo"
        }
    }
    pub fn from(mancon: &str) -> ManCon {
        match mancon {
            "None" => ManCon::None,
            "Low" => ManCon::Low,
            "Medium" => ManCon::Medium,
            "High" => ManCon::High,
            "VeryHigh" => ManCon::VeryHigh,
            "Extreme" => ManCon::Extreme,
            "Neo" => ManCon::Neo,
            _ => ManCon::Unknown
        }
    }
}