Kode Rust mungkin mempunyai banyak sekali representasi error, tetapi pustaka standar mempunyai sebuah trait universal std::error::Error untuk mendeskripsikan error.
Dengan menggunakan smart pointer Box, kita dapat menggunakan tipe Box<dyn Error> sebagai tipe umum untuk mengembalikan error karena ini memungkinkan kita menyebarkan sebuah error di heap dan berinteraksi dengannya pada tingkat tinggi tanpa perlu mengetahui tipe spesifiknya.
Di awal Tour of Rust kita telah mempelajari bahwa main dapat mengembalikan sebuah error. Sekarang kita dapat mengembalikan sebuah tipe yang mampu mendeskripsikan hampir semua jenis error yang mungkin terjadi di program kita, selama struktur data error tersebut mengimplementasikan trait Error umum milik Rust.
fn main() -> Result<(), Box<dyn std::error::Error>>