diff --git a/src/main.rs b/src/main.rs index 48fdae4..a362e2e 100644 --- a/src/main.rs +++ b/src/main.rs @@ -1,17 +1,21 @@ use std::fs; use std::io; +/// Struct to store robot position struct Position { x: u32, y: u32, } +/// A Robot *aka droid* is represented here. +/// Each robot must have a unique id. struct Robot { id: u32, o: Orientation, p: Position, } +/// Enum to store all possible orientations. enum Orientation { N, E, @@ -19,12 +23,14 @@ enum Orientation { W, } +/// Enum to store all possible instructions. enum Instruction { L, R, F, } +/// Parse char and return corresponding orientation. fn parse_orientation(c: char) -> Result { match c { 'N' => Ok(Orientation::N), @@ -35,6 +41,7 @@ fn parse_orientation(c: char) -> Result { } } +/// Parse char and return corresponding instruction. fn parse_instruction(c: char) -> Result { match c { 'L' => Ok(Instruction::L), @@ -44,13 +51,15 @@ fn parse_instruction(c: char) -> Result { } } +/// Retrieve the content of a file and return it as a string. fn open_file(filename: &str) -> io::Result { let content = fs::read_to_string(filename)?; Ok(content) } fn main() { - let conf = open_file("two_robots.txt"); + let mut robot_pool: Vec = Vec::new(); + let raw_conf = open_file("two_robots.txt"); } #[cfg(test)]