1use std::fmt;
4
5#[derive(Debug, Copy, Clone, Eq, PartialEq)]
7pub enum Model {
8 LibraColour,
9 ClaraColour,
10 ClaraBW,
11 Elipsa2E,
12 Clara2E,
13 Libra2,
14 Sage,
15 Elipsa,
16 Nia,
17 LibraH2O,
18 Forma32GB,
19 Forma,
20 ClaraHD,
21 AuraH2OEd2V2,
22 AuraH2OEd2V1,
23 AuraEd2V2,
24 AuraEd2V1,
25 AuraONELimEd,
26 AuraONE,
27 Touch2,
28 GloHD,
29 AuraH2O,
30 Aura,
31 AuraHD,
32 Mini,
33 Glo,
34 TouchC,
35 TouchAB,
36}
37
38impl fmt::Display for Model {
39 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
40 match *self {
41 Model::LibraColour => write!(f, "Libra Colour"),
42 Model::ClaraColour => write!(f, "Clara Colour"),
43 Model::ClaraBW => write!(f, "Clara BW"),
44 Model::Elipsa2E => write!(f, "Elipsa 2E"),
45 Model::Clara2E => write!(f, "Clara 2E"),
46 Model::Libra2 => write!(f, "Libra 2"),
47 Model::Sage => write!(f, "Sage"),
48 Model::Elipsa => write!(f, "Elipsa"),
49 Model::Nia => write!(f, "Nia"),
50 Model::LibraH2O => write!(f, "Libra H₂O"),
51 Model::Forma32GB => write!(f, "Forma 32GB"),
52 Model::Forma => write!(f, "Forma"),
53 Model::ClaraHD => write!(f, "Clara HD"),
54 Model::AuraH2OEd2V1 => write!(f, "Aura H₂O Edition 2 Version 1"),
55 Model::AuraH2OEd2V2 => write!(f, "Aura H₂O Edition 2 Version 2"),
56 Model::AuraEd2V1 => write!(f, "Aura Edition 2 Version 1"),
57 Model::AuraEd2V2 => write!(f, "Aura Edition 2 Version 2"),
58 Model::AuraONELimEd => write!(f, "Aura ONE Limited Edition"),
59 Model::AuraONE => write!(f, "Aura ONE"),
60 Model::Touch2 => write!(f, "Touch 2.0"),
61 Model::GloHD => write!(f, "Glo HD"),
62 Model::AuraH2O => write!(f, "Aura H₂O"),
63 Model::Aura => write!(f, "Aura"),
64 Model::AuraHD => write!(f, "Aura HD"),
65 Model::Mini => write!(f, "Mini"),
66 Model::Glo => write!(f, "Glo"),
67 Model::TouchC => write!(f, "Touch C"),
68 Model::TouchAB => write!(f, "Touch A/B"),
69 }
70 }
71}