Przewodnik po Języku Rust Spis Treści

Elegancka Obsługa Błędów

Typ Result jest na tyle powszechny, że doczekał się swojego własnego operatora. Używając znaku zapytania ? możemy dokonać propagacji błędu w niezwykle zwięzły sposób. Oba z poniższych fragmentów kodu wykonują w praktyce tą samą pracę:

zrob_cos_co_moze_nie_zadzialac()?
match zrob_cos_co_moze_nie_zadzialac() {
    Ok(v) => v,
    Err(e) => return Err(e),
}