[−][src]Macro evitable::ensure
Utility macro to return errors if a given condition is false.
Arguments
test
- Test expressionctx
- Error context - only evaluated if test expression is false
Example
#[evitable(description = "Error")] #[derive(PartialEq)] pub struct Context(u8); fn validate(val: u8) -> Result<()> { ensure!(val < 10, Context(val)); Ok(()) } validate(5).unwrap(); assert_eq!(validate(15).unwrap_err().context(), &Context(15));