Convert Result -> Option
Đôi khi bạn sẽ cần convert từ:
Ok(v)–>Some(v)- hoặc ngược lại,
Err(e)–>Some(e)
.ok()
// .ok(v) = Some(v)
let x: Result<u32, &str> = Ok(2);
assert_eq!(x.ok(), Some(2));
let y: Result<u32, &str> = Err("Nothing here");
assert_eq!(y.ok(), None);
.err()
// .err()
let x: Result<u32, &str> = Ok(2);
assert_eq!(x.err(), None);
let x: Result<u32, &str> = Err("Nothing here");
assert_eq!(x.err(), Some("Nothing here"));