タグ

ブックマーク / 3c1u.hatenablog.com (1)

  • Rustのエラーとなかよくなる - 3c1uのブログ

    Rustのエラー機構は大きく分けて二つあります。 Result<T, E> 想定内のエラー。I/Oエラーやパースエラーなどはこちら。 panic!() 想定外のエラー。スレッドやプログラム自体がクラッシュする。 Result型とエラーとの付き合い方 Result型はRustが提供するエラーハンドリング用の型で、こんな感じの定義になっています。 pub enum Result<T, E> { Ok(T), Err(E), } 成功時にOk、失敗時にErrに値をいれることで、値を取り出すときにエラーかどうかを判別できる、というわけです。 値を取り出すときには、パターンマッチやunwrapなどを使う方法があります。 unwrapは、値を持たないとき(エラーのとき)にpanic!()するメソッドです。 let file = File::open("senko.txt"); // パターンマッチで値

    Rustのエラーとなかよくなる - 3c1uのブログ
  • 1