Don't promote to `f64` in strict-equality comparisons if we can promote to `i64` instead.

This commit is contained in:
David Wendt 2020-08-07 21:26:33 -04:00 committed by Mike Welsh
parent a211698464
commit 4e92352813
1 changed files with 2 additions and 2 deletions

View File

@ -129,9 +129,9 @@ impl PartialEq for Value<'_> {
(Value::Number(a), Value::Integer(b)) => *a == *b as f64,
(Value::Unsigned(a), Value::Number(b)) => *a as f64 == *b,
(Value::Unsigned(a), Value::Unsigned(b)) => a == b,
(Value::Unsigned(a), Value::Integer(b)) => *a as f64 == *b as f64,
(Value::Unsigned(a), Value::Integer(b)) => *a as i64 == *b as i64,
(Value::Integer(a), Value::Number(b)) => *a as f64 == *b,
(Value::Integer(a), Value::Unsigned(b)) => *a as f64 == *b as f64,
(Value::Integer(a), Value::Unsigned(b)) => *a as i64 == *b as i64,
(Value::Integer(a), Value::Integer(b)) => a == b,
(Value::String(a), Value::String(b)) => a == b,
(Value::Object(a), Value::Object(b)) => Object::ptr_eq(*a, *b),