error handling for position

This commit is contained in:
2020-04-18 16:12:06 +01:00
parent 78b2319d4f
commit c954e56ea9
5 changed files with 12 additions and 10 deletions

View File

@@ -64,13 +64,13 @@ impl From<String> for Room {
let item_position: Vec<&str> = last_line.split(' ').collect();
let item_id = item_position[0];
let position = item_position[1];
let position = Position::from(position.to_string());
let position = Position::from(position.to_string()).unwrap();
items.push(Instance { position, id: item_id.to_string() });
} else if last_line.starts_with("EXT") {
let last_line = last_line.replace("EXT ", "");
let parts: Vec<&str> = last_line.split(' ').collect();
let position = Position::from(parts[0].to_string());
let position = Position::from(parts[0].to_string()).unwrap();
let exit = Exit::from(format!("{} {}", parts[1], parts[2]));
exits.push(ExitInstance { position, exit });
@@ -79,7 +79,7 @@ impl From<String> for Room {
let ending_position: Vec<&str> = last_line.split(' ').collect();
let ending = ending_position[0].to_string();
let position = ending_position[1].to_string();
let position = Position::from(position);
let position = Position::from(position).unwrap();
endings.push(Instance { position, id: ending });
} else {