Przewodnik po Języku Rust Spis Treści

Funkcja Main, Która Może Zawieść, Ponownie

Kod Rusta może mieć wiele różnych reprezentacji błędów, ale biblioteka standardowa posiada uniwersalną cechę std::error::Error do opisywania błędów.

Korzystając z inteligentnego wskaźnika Box, możemy użyć typu Box<dyn std::error::Error> jako wspólnego typu do zwracania błędów, ponieważ pozwala nam to propagować błąd na stercie i wchodzić z nim w interakcję na wysokim poziomie, bez potrzeby znajomości konkretnego typu.

Na początku Tour of Rust dowiedzieliśmy się, że main może zwrócić błąd. Teraz możemy zwrócić typ zdolny opisać niemal każdy rodzaj błędu, jaki może wystąpić w naszym programie, o ile struktura danych tego błędu implementuje wspólną dla Rusta cechę Error.

fn main() -> Result<(), Box<dyn std::error::Error>>