Skip to content

Version 0.0.2

Compare
Choose a tag to compare
@SvenTiigi SvenTiigi released this 10 Jul 15:22

Error Handling 🕵️‍♂️

Each property that is declared with the @Validated attribute can make use of advanced functions and properties from the Validated Property Wrapper itself via the $ notation prefix.

Beside doing a simple nil check on your @Validated property to ensure if the value is valid or not you can access the validatedValue or validationError property to retrieve the ValidationError or the valid value.

@Validated(.nonEmpty)
var username: String?

// Switch on `validatedValue`
switch $username.validatedValue {
case .success(let value):
    // Value is valid ✅
    break
case .failure(let validationError):
    // Value is invalid ⛔️
    break
}

// Or unwrap the `validationError`
if let validationError = $username.validationError {
    // Value is invalid ⛔️
} else {
    // Value is valid ✅
}