36 lines
735 B
Rust
36 lines
735 B
Rust
enum Orientation {
|
|
N,
|
|
E,
|
|
S,
|
|
W,
|
|
}
|
|
|
|
enum Instruction {
|
|
L,
|
|
R,
|
|
F,
|
|
}
|
|
|
|
fn parse_orientation(c: char) -> Result<Orientation, &'static str> {
|
|
match c {
|
|
'N' => Ok(Orientation::N),
|
|
'E' => Ok(Orientation::E),
|
|
'S' => Ok(Orientation::S),
|
|
'W' => Ok(Orientation::W),
|
|
_ => Err("Invalid character, does not match any orientations"),
|
|
}
|
|
}
|
|
|
|
fn parse_instruction(c: char) -> Result<Instruction, &'static str> {
|
|
match c {
|
|
'L' => Ok(Instruction::L),
|
|
'R' => Ok(Instruction::R),
|
|
'F' => Ok(Instruction::F),
|
|
_ => Err("Invalid character, does not match any instructions"),
|
|
}
|
|
}
|
|
|
|
fn main() {
|
|
let file_data = include_str!("../two_robots.txt");
|
|
}
|