chore: extract arbitrary into its own crate arbitrary-value

This commit is contained in:
2025-04-21 16:40:27 -04:00
parent 325cb60aa1
commit ea7e9e3c53
8 changed files with 45 additions and 58 deletions

View File

@@ -0,0 +1,23 @@
use snafu::Snafu;
#[cfg_attr(feature = "pyo3", derive(pyo3::IntoPyObject))]
#[derive(Debug, Clone, derive_more::Into)]
pub struct FiniteF64(f64);
#[derive(Debug, Snafu)]
#[snafu(display("{value:?} is not finite"))]
pub struct NotFinite {
value: f64,
}
impl TryFrom<f64> for FiniteF64 {
type Error = NotFinite;
fn try_from(value: f64) -> Result<Self, Self::Error> {
if value.is_finite() {
Ok(Self(value))
} else {
Err(NotFinite { value })
}
}
}