But that's exactly what typed throws do?
`static func validate(name: String) throws(ValidationError)`
Would be handled as:
```
do {
try UsernameValidator.validate(name: name)
} catch { switch error {
case .emptyName:
print("You've submitted an empty name!")
case .nameTooShort(let nameLength):
print("The submitted name is too short!")
}
}```