Skip to main content

ensure

Macro ensure 

Source
macro_rules! ensure {
    ($cond:expr, $err:expr) => { ... };
    ($cond:expr, $err:ident { $($field:ident: $value:expr),* $(,)? }) => { ... };
}
Expand description

Macro for precondition checking with automatic error creation

§Examples

use oxigdal_core::ensure;
use oxigdal_core::error::{OxiGdalError, Result};

fn process_data(size: usize) -> Result<()> {
    ensure!(size > 0, InvalidParameter {
        parameter: "size",
        message: "size must be positive".to_string()
    });
    Ok(())
}