--- a/crates/jrsonnet-evaluator/src/val.rs +++ b/crates/jrsonnet-evaluator/src/val.rs @@ -136,6 +136,12 @@ } } +impl Default for Thunk { + fn default() -> Self { + Self::evaluated(T::default()) + } +} + type CacheKey = (Option, Option); #[derive(Trace, Clone)] @@ -358,11 +364,12 @@ } /// Represents any valid Jsonnet value. -#[derive(Debug, Clone, Trace)] +#[derive(Debug, Clone, Trace, Default)] pub enum Val { /// Represents a Jsonnet boolean. Bool(bool), /// Represents a Jsonnet null value. + #[default] Null, /// Represents a Jsonnet string. Str(StrValue),