Aktualizuję kod, aby korzystał z języka Swift i zastanawiam się, jak wydrukować szczegóły błędu dla wyjątku pasującego do klauzuli „catch all”. Lekko zmodyfikowałem przykład z tej strony przewodnika po Swift, aby zilustrować mój punkt widzenia:
do {
try vend(itemNamed: "Candy Bar")
// Enjoy delicious snack
} catch VendingMachineError.InvalidSelection {
print("Invalid Selection.")
} catch VendingMachineError.OutOfStock {
print("Out of Stock.")
} catch VendingMachineError.InsufficientFunds(let amountRequired) {
print("Insufficient funds. Please insert an additional $\(amountRequired).")
} catch {
// HOW DO I PRINT OUT INFORMATION ABOUT THE ERROR HERE?
}
Jeśli złapię nieoczekiwany wyjątek, muszę być w stanie zarejestrować coś o tym, co go spowodowało.