1use std::fmt;
2
3#[derive(Debug,PartialEq,Clone)]
6pub enum Configuration {
7 AL1,
8 AL2,
9 OH1,
10 OH2,
11 OH3,
12 OH4,
13 OH5,
14 OH6,
15 OH7,
16 OH8,
17 OH9,
18 OH10,
19 OH11,
20 OH12,
21 OH13,
22 OH14,
23 OH15,
24 OH16,
25 OH17,
26 OH18,
27 OH19,
28 OH20,
29 OH21,
30 OH22,
31 OH23,
32 OH24,
33 OH25,
34 OH26,
35 OH27,
36 OH28,
37 OH29,
38 OH30,
39 SP1,
40 SP2,
41 SP3,
42 TB1,
43 TB2,
44 TB3,
45 TB4,
46 TB5,
47 TB6,
48 TB7,
49 TB8,
50 TB9,
51 TB10,
52 TB11,
53 TB12,
54 TB13,
55 TB14,
56 TB15,
57 TB16,
58 TB17,
59 TB18,
60 TB19,
61 TB20,
62 TH1,
63 TH2
64}
65
66impl fmt::Display for Configuration {
67 fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
68 write!(f, "{}", match self {
69 Configuration::TH1 => "@",
70 Configuration::TH2 => "@@",
71 Configuration::AL1 => "@",
72 Configuration::AL2 => "@@",
73 Configuration::TB1 => "@TB1",
74 Configuration::TB2 => "@TB2",
75 Configuration::TB3 => "@TB3",
76 Configuration::TB4 => "@TB4",
77 Configuration::TB5 => "@TB5",
78 Configuration::TB6 => "@TB6",
79 Configuration::TB7 => "@TB7",
80 Configuration::TB8 => "@TB8",
81 Configuration::TB9 => "@TB9",
82 Configuration::TB10 => "@TB10",
83 Configuration::TB11 => "@TB11",
84 Configuration::TB12 => "@TB12",
85 Configuration::TB13 => "@TB13",
86 Configuration::TB14 => "@TB14",
87 Configuration::TB15 => "@TB15",
88 Configuration::TB16 => "@TB16",
89 Configuration::TB17 => "@TB17",
90 Configuration::TB18 => "@TB18",
91 Configuration::TB19 => "@TB19",
92 Configuration::TB20 => "@TH1",
93 Configuration::OH1 => "@OH1",
94 Configuration::OH2 => "@OH2",
95 Configuration::OH3 => "@TH1",
96 Configuration::OH4 => "@OH4",
97 Configuration::OH5 => "@OH5",
98 Configuration::OH6 => "@OH6",
99 Configuration::OH7 => "@OH7",
100 Configuration::OH8 => "@OH8",
101 Configuration::OH9 => "@OH9",
102 Configuration::OH10 => "@OH10",
103 Configuration::OH11 => "@OH11",
104 Configuration::OH12 => "@OH12",
105 Configuration::OH13 => "@OH13",
106 Configuration::OH14 => "@OH6",
107 Configuration::OH15 => "@OH15",
108 Configuration::OH16 => "@OH16",
109 Configuration::OH17 => "@OH17",
110 Configuration::OH18 => "@OH18",
111 Configuration::OH19 => "@OH19",
112 Configuration::OH20 => "@OH20",
113 Configuration::OH21 => "@OH21",
114 Configuration::OH22 => "@OH22",
115 Configuration::OH23 => "@OH23",
116 Configuration::OH24 => "@OH24",
117 Configuration::OH25 => "@OH25",
118 Configuration::OH26 => "@OH26",
119 Configuration::OH27 => "@OH27",
120 Configuration::OH28 => "@OH28",
121 Configuration::OH29 => "@OH29",
122 Configuration::OH30 => "@OH30",
123 Configuration::SP1 => "@SP1",
124 Configuration::SP2 => "@SP2",
125 Configuration::SP3 => "@SP3"
126 })
127 }
128}