From bc1bc91a33bcef567dbd7f846dbfac9d19a0994e Mon Sep 17 00:00:00 2001 From: Laurenz Date: Mon, 16 May 2022 15:55:50 +0200 Subject: Allow adding `none` and anything --- src/eval/ops.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/eval/ops.rs') diff --git a/src/eval/ops.rs b/src/eval/ops.rs index 57390a65..b3f2f3b4 100644 --- a/src/eval/ops.rs +++ b/src/eval/ops.rs @@ -61,6 +61,9 @@ pub fn neg(value: Value) -> StrResult { /// Compute the sum of two values. pub fn add(lhs: Value, rhs: Value) -> StrResult { Ok(match (lhs, rhs) { + (a, None) => a, + (None, b) => b, + (Int(a), Int(b)) => Int(a + b), (Int(a), Float(b)) => Float(a as f64 + b), (Float(a), Int(b)) => Float(a + b as f64), @@ -83,9 +86,6 @@ pub fn add(lhs: Value, rhs: Value) -> StrResult { (Fraction(a), Fraction(b)) => Fraction(a + b), (Str(a), Str(b)) => Str(a + b), - - (Content(a), None) => Content(a), - (None, Content(b)) => Content(b), (Content(a), Content(b)) => Content(a + b), (Content(a), Str(b)) => Content(a + model::Content::Text(b)), (Str(a), Content(b)) => Content(model::Content::Text(a) + b), -- cgit v1.2.3