diff --git a/crates/nu-data/src/base.rs b/crates/nu-data/src/base.rs index e93111e595..326e15c713 100644 --- a/crates/nu-data/src/base.rs +++ b/crates/nu-data/src/base.rs @@ -78,6 +78,7 @@ pub enum CompareValues { String(String, String), Date(DateTime, DateTime), DateDuration(DateTime, BigInt), + TimeDuration(BigInt, BigInt), Booleans(bool, bool), } @@ -104,6 +105,7 @@ impl CompareValues { right.cmp(left) } CompareValues::Booleans(left, right) => left.cmp(right), + CompareValues::TimeDuration(left, right) => left.cmp(right), } } } @@ -174,6 +176,9 @@ pub fn coerce_compare_primitive( (String(left), FilePath(right)) => { CompareValues::String(left.clone(), right.as_path().display().to_string()) } + (Duration(left), Duration(right)) => { + CompareValues::TimeDuration(left.clone(), right.clone()) + } _ => return Err((left.type_name(), right.type_name())), }) }