// ./src/error/result.md fn multiply(first_number_str: &str, second_number_str: &str) -> i32 { // Let's try using `unwrap()` to get the number out. Will it bite us? let first_number = first_number_str.parse::().unwrap(); let second_number = second_number_str.parse::().unwrap(); first_number * second_number } fn part0() { let twenty = multiply("10", "2"); println!("double is {}", twenty); let tt = multiply("t", "2"); println!("double is {}", tt); } use std::num::ParseIntError; fn part1() -> Result<(), ParseIntError> { let number_str = "10"; let number = match number_str.parse::() { Ok(number) => number, Err(e) => return Err(e), }; println!("{}", number); Ok(()) } pub fn main() { part0(); part1(); }