Rust Programming Cookbook by Claus Matzinger

Rust Programming Cookbook by Claus Matzinger

Author:Claus Matzinger
Language: eng
Format: epub
Tags: COM011000 - COMPUTERS / Systems Architecture / General, COM051230 - COMPUTERS / Software Development and Engineering / General, COM051070 - COMPUTERS / Programming Languages / C++
Publisher: Packt Publishing
Published: 2019-10-18T13:35:08+00:00


assert_eq!(None::<Result<i32, MyError>>.transpose(), Ok(None::

<i32>));

Moving between the two types is not only about transposing—there are more complex ways to do that too. Create another test:

#[test]

fn conversion() {

// more to follow

}

As a first test, let's replace // more to follow with something that can be used instead of unwrap():

let opt = Some(42);

assert_eq!(opt.ok_or(MyError), Ok(42));

let res: Result<i32, MyError> = Ok(42);

assert_eq!(res.ok(), opt);

assert_eq!(res.err(), None);

To complete the conversion test, also add the following to test. These are conversions but from the Err side:



Download



Copyright Disclaimer:
This site does not store any files on its server. We only index and link to content provided by other sites. Please contact the content providers to delete copyright contents if any and email us, we'll remove relevant links or contents immediately.