diff --git a/units/src/result.rs b/units/src/result.rs index a7bfe46d0..adb301930 100644 --- a/units/src/result.rs +++ b/units/src/result.rs @@ -254,6 +254,18 @@ impl MathOp { /// Returns `true` if this operation error'ed due to division by zero. pub fn is_div_by_zero(self) -> bool { !self.is_overflow() } + + /// Returns `true` if this operation error'ed due to addition. + pub fn is_addition(self) -> bool { self == MathOp::Add } + + /// Returns `true` if this operation error'ed due to subtraction. + pub fn is_subtraction(self) -> bool { self == MathOp::Sub } + + /// Returns `true` if this operation error'ed due to multiplication. + pub fn is_multiplication(self) -> bool { self == MathOp::Mul } + + /// Returns `true` if this operation error'ed due to negation. + pub fn is_negation(self) -> bool { self == MathOp::Neg } } impl fmt::Display for MathOp {