diff options
author | Adam Carpenter <53hornet@gmail.com> | 2019-03-27 15:32:37 -0400 |
---|---|---|
committer | Adam Carpenter <53hornet@gmail.com> | 2019-03-27 15:32:37 -0400 |
commit | 67cdcc2e12118becb823e20a40cc2687f2b8425a (patch) | |
tree | ed92c3234b89079e6d4cf36f5e80c5ffa79def48 /rust-book/errors/src | |
parent | e25482fca375d318a39c3b54db396b0db6e0b263 (diff) | |
download | learning-rust-67cdcc2e12118becb823e20a40cc2687f2b8425a.tar.xz learning-rust-67cdcc2e12118becb823e20a40cc2687f2b8425a.zip |
Started Rust in Action MEAP.
Diffstat (limited to 'rust-book/errors/src')
-rwxr-xr-x | rust-book/errors/src/main.rs | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/rust-book/errors/src/main.rs b/rust-book/errors/src/main.rs new file mode 100755 index 0000000..1250677 --- /dev/null +++ b/rust-book/errors/src/main.rs @@ -0,0 +1,38 @@ +use std::io; +use std::io::Read; +use std::fs::File; +//use std::io::ErrorKind; + +fn read_username_from_file() -> Result<String, io::Error> { +// let f = File::open("hello.txt"); +// let mut f = match f { +// Ok(file) => file, +// Err(e) => return Err(e), +// }; +// let mut s = String::new(); +// match f.read_to_string(&mut s) { +// Ok(_) => Ok(s), +// Err(e) => Err(e), +// } + let mut s = String::new(); + File::open("hello.txt")?.read_to_string(&mut s)?; + Ok(s) +} +fn main() { +// let f = File::open("hello.txt").map_err(|error| { +// if error.kind() == ErrorKind::NotFound { +// File::create("hello.txt").unwrap_or_else(|error| { +// panic!("Could not create file: {:?}", error); +// }) +// } +// else { +// panic!("Problem opening file: {:?}", error); +// } +// }); + + //let f = File::open("hello.txt").unwrap(); + + //let f = File::open("hello.txt").expect("failed to open hello.txt"); + + dbg!(read_username_from_file()); +} |