//-- ######################### //-- Task: Implementing mapt for Result //-- Author: Vigneshwer.D //-- Version: 1.0.0 //-- Date: 26 March 17 //-- ######################### use std::num::ParseIntError; // Define a generic alias for a `Result` with the error type `ParseIntError`. type AliasedResult = Result; // Use the above alias to refer to our specific `Result` type. fn double_number(number_str: &str) -> AliasedResult { number_str.parse::().map(|n| 2 * n) } // Here, the alias again allows us to save some space. fn print(result: AliasedResult) { match result { Ok(n) => println!("n is {}", n), Err(e) => println!("Error: {}", e), } } fn main() { print(double_number("10")); print(double_number("t")); }