🦞
[Rust] Resultのメソッド早見表
Result
Method | Ok(5) | Err("失敗") | 動作 |
---|---|---|---|
is_ok() | true | false | Ok か? |
unwrap() | 5 | ! | Ok なら値 |
unwrap_unchecked() | 5 | ! | Ok なら値。unsafe が必要 |
expect("大失敗") | 5 | ! | Ok なら値。Err 時の文言必須 |
unwrap_or(999) | 5 | 999 | Ok なら値で Err なら補完 |
unwrap_or_else(|_| 999) | 5 | 999 | 〃 |
unwrap_or_default() | 5 | 0 | 〃 |
map_or(999, |e| e * 2) | 10 | 999 | Ok なら {} で Err なら補完 |
map_or_else(|_| 999, |e| e * 2) | 10 | 999 | 〃 |
map(|e| e * 2) | Ok(10) | Err("失敗") | Ok なら {} を Ok で返す |
and_then(|e| Ok(e * 2)) | Ok(10) | Err("失敗") | Ok なら {} を Result で返す |
and_then::<i32, _>(|_| Err("x")) | Err("x") | Err("失敗") | 〃 |
is_err() | false | true | Err か? |
expect_err("xxx") | ! | "失敗" | Err なら値。Ok 時の文言必須 |
unwrap_err_unchecked() | ! | "失敗" | Err なら値。unsafe が必要 |
map_err(|e| format!("大{}", e)) | Ok(5) | Err("大失敗") | Err なら {} を Err で返す |
err() | None | Some("失敗") | Err なら Some 化 |
and(Ok(6)) | Ok(6) | Err("失敗") | Ok を真として AND |
or::<i32>(Ok(6)) | Ok(5) | Ok(6) | Ok を真として OR |
ok() | Some(5) | None | Ok なら Some 化 |
Discussion