in Rust le istruzioni if
, match
, le funzioni, e i blocchi di scope hanno la possibilità di restituire valori.
Se l'ultima istruzione in una if
, match
, funzione, o blocco è una espressione senza ;
, Rust la ritornerà come risultato del blocco. Questo è un bel modo per creare costrutti logici concisi che ritornano un valore che a sua volta potrà essere messo in una nuova variabile.
Nota che questo permette all'istruzione if
di funzionare come un'espressione ternaria.