difftreelog
feat remove clamp builtin
in: master
2 files changed
crates/jrsonnet-stdlib/src/lib.rsdiffbeforeafterboth81 ("sign", builtin_sign::INST),81 ("sign", builtin_sign::INST),82 ("max", builtin_max::INST),82 ("max", builtin_max::INST),83 ("min", builtin_min::INST),83 ("min", builtin_min::INST),84 ("clamp", builtin_clamp::INST),85 ("modulo", builtin_modulo::INST),84 ("modulo", builtin_modulo::INST),86 ("floor", builtin_floor::INST),85 ("floor", builtin_floor::INST),87 ("ceil", builtin_ceil::INST),86 ("ceil", builtin_ceil::INST),crates/jrsonnet-stdlib/src/math.rsdiffbeforeafterboth20 Ok(x.min(y))20 Ok(x.min(y))21}21}2223#[builtin]24pub fn builtin_clamp(x: f64, min_val: f64, max_val: f64) -> Result<f64> {25 debug_assert!(x.is_finite(), "jsonnet number are always finite");26 debug_assert!(min_val.is_finite(), "jsonnet number are always finite");27 debug_assert!(max_val.is_finite(), "jsonnet number are always finite");2829 // `f64::clamp` should noe be used here since it requires extra checks to guarantee NaN-safety30 Ok(if x < min_val {31 min_val32 } else if x > max_val {33 max_val34 } else {35 x36 })37}382239#[builtin]23#[builtin]40pub fn builtin_modulo(a: f64, b: f64) -> Result<f64> {24pub fn builtin_modulo(a: f64, b: f64) -> Result<f64> {