Result型の返り値を使わないとき
以下のようにResult型を返すメソッドの返り値を使わないと、コンパイラがunused `std::result::Result` that must be usedのような警告を出す。
process::Command::new("ls").output()Result型を返すメソッドが失敗したとき、返り値を使わないとそれに気づくことができないため、必ず返り値を使うようにコンパイラが警告してくれる。
返り値を使わないときはexpectを使う。このメソッドはResultがOkであれば値を返し、Errであれば引数のメッセージを表示してpanicを起こす。
process::Command::new("ls").output().expect("failed");あるいは、?オペレータを使ってエラーをそのまま呼び出し元に転送することもできる。
fn execute_ls() -> io::Result<()> {
process::Command::new("ls").output()?;
Ok(())
}