Για την ταχεία συγγραφή κώδικα, ο χειρισμός των Option
/Result
μπορεί να γίνει πληκτικός. Αμφότεροι οι τύποι λοιπόν έχουν μία μέθοδο ονόματι unwrap
η οποία είναι χρήσιμη για την εξαγωγή μίας τιμής «στα βρώμικα». Αυτή η μέθοδος:
Option
/Result
panic!
.Τα παρακάτω δύο τμήματα κώδικα είναι ισοδύναμα:
my_option.unwrap()
match my_option {
Some(v) => v,
None => panic!("κάποιο μήνυμα λάθους"),
}
Ομοίως:
my_result.unwrap()
match my_result {
Ok(v) => v,
Err(e) => panic!("Μήνυμα λάθους"),
}
Είναι πάντοτε πολύ προτιμότερο να χρησιμοποιεί κανείς τις δυνατότητες που επιτρέπουν τη συνέχιση της ροής του προγράμματος ακόμα κι αν έχει συμβεί σφάλμα, όπως το match
και το ?
. Υπάρχουν και πιο εύχρηστες επιλογές βέβαια, όπως το unwrap_or
ή το map
και το and_then
. Φροντίστε λοιπόν να χρησιμοποιείτε το unwrap
όσο το δυνατόν σπανιότερα!