woah
is a Rust crate providing a "ternary Result
" type that differentiates between
"local errors" which can be handled, and "fatal errors" which can't.
```rust use std::ops::Try as _;
fn main() -> Result<(), FatalError> { let data = getdatafrom_api()?; println!("Data: {}", data), Ok(()) }
fn getdatafromapi() -> Result
match result {
// If the error is recoverable, handle it.
Err(RecoverableError::Redirected { new_url }) => request_url(new_url),
Ok(num) => Ok(num),
}
}
fn request_url(url: &str) -> woah::Result
enum RecoverableError { Redirected { new_url: String }, }
enum FatalError { CouldntConnect, } ```