RustのFutureでinspect_errでエラーの時に処理を行う

Futureが解決された時にエラーであればinspect_errの部分が実行される

use futures::future::TryFutureExt;

#[tokio::main]
async fn main() {
    assert!(async {
        Err::<(), String>("hoge".into())
    }.inspect_err(|e| {
        println!("{}", e)
    }).await.is_err());
}

try-cache的な感じの働きができるなーと思いました

   Compiling result v0.1.0 (/home/user/dev/rust/inspect_err)
    Finished dev [unoptimized + debuginfo] target(s) in 2.03s
     Running `target/debug/inspect_err`
hoge

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA