From 13d49041c6898094cdc8d0d497d8742e3665706f Mon Sep 17 00:00:00 2001 From: Lach Date: Sat, 15 Aug 2020 20:18:10 +0000 Subject: [PATCH] fix: convert to integer number on zero fraction --- --- a/crates/jrsonnet-evaluator/src/integrations/serde.rs +++ b/crates/jrsonnet-evaluator/src/integrations/serde.rs @@ -17,7 +17,11 @@ Val::Bool(b) => Value::Bool(*b), Val::Null => Value::Null, Val::Str(s) => Value::String((&s as &str).into()), - Val::Num(n) => Value::Number(Number::from_f64(*n).expect("to json number")), + Val::Num(n) => Value::Number(if *n <= f64::EPSILON { + (*n as i64).into() + } else { + Number::from_f64(*n).expect("to json number") + }), Val::Lazy(v) => (&v.evaluate()?).try_into()?, Val::Arr(a) => { let mut out = Vec::with_capacity(a.len()); -- gitstuff