Tour di Rust Indice dei Contenuti

Main Fallibile Rivisitata

Il codice Rust può avere una pletora di rappresentazioni per gli errori, ma la libreria standard ha un trait universale std::error::Error per descrivere gli errori.

Usando uno smart pointer Box, possiamo usare il tipo Box<dyn Error> come tipo comune per restituire errori, perché ci permette di propagare un errore sull'heap e interagire con esso a un livello alto, senza dover conoscere un tipo specifico.

All'inizio di Tour of Rust abbiamo imparato che main può restituire un errore. Ora possiamo restituire un tipo capace di descrivere quasi ogni tipo di errore che potrebbe verificarsi nel nostro programma, purché la struttura dati dell'errore implementi il trait comune Error di Rust.

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