ICFP 2007 Contest: https://web.archive.org/web/20090301164728/https://save-endo.cs.uu.nl/
1#[derive(Copy, Clone, PartialEq, Debug)]
2pub enum Base {
3 I,
4 C,
5 F,
6 P,
7}
8
9impl Base {
10 pub fn from_char(c: char) -> Option<Base> {
11 match c {
12 'I' => Some(Base::I),
13 'C' => Some(Base::C),
14 'F' => Some(Base::F),
15 'P' => Some(Base::P),
16 _ => None,
17 }
18 }
19
20 pub fn to_char(&self) -> char {
21 match self {
22 Base::I => 'I',
23 Base::C => 'C',
24 Base::F => 'F',
25 Base::P => 'P',
26 }
27 }
28}