#[cfg(feature = "parallel")]
#[macro_export]
macro_rules! join {
($a: expr, $b: expr) => {
rayon::join(|| $a, || $b)
};
}
#[cfg(not(feature = "parallel"))]
#[macro_export]
macro_rules! join {
($a: expr, $b: expr) => {
($a, $b)
};
}
#[macro_export]
macro_rules! report_error_if_any {
( $res:ident ) => {{
#[cfg(feature = "parallel")]
if let Some(e) = $res.find_any(|r| r.is_err()) {
e
} else {
Ok(())
}
#[cfg(not(feature = "parallel"))]
if let Some(e) = $res.find(|r| r.is_err()) {
e
} else {
Ok(())
}
}};
}
#[cfg(test)]
#[macro_export]
macro_rules! safegcd_nlimbs {
($bits:expr) => {
($bits + 64).div_ceil(62)
};
}