From bcacb49c05dd62979c124f65243e85ac0f62e5f7 Mon Sep 17 00:00:00 2001 From: Mark Thom Date: Sun, 9 Jan 2022 18:48:32 -0700 Subject: [PATCH] compare bigints by value not by pointer (#1183) --- src/arithmetic.rs | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/src/arithmetic.rs b/src/arithmetic.rs index 6396336d..e909eed7 100644 --- a/src/arithmetic.rs +++ b/src/arithmetic.rs @@ -603,33 +603,33 @@ impl Ord for Number { } (&Number::Fixnum(n1), &Number::Float(n2)) => OrderedFloat(n1.get_num() as f64).cmp(&n2), (&Number::Float(n1), &Number::Fixnum(n2)) => n1.cmp(&OrderedFloat(n2.get_num() as f64)), - (&Number::Integer(ref n1), &Number::Integer(ref n2)) => n1.cmp(n2), - (&Number::Integer(ref n1), Number::Float(n2)) => OrderedFloat(n1.to_f64()).cmp(n2), + (&Number::Integer(n1), &Number::Integer(n2)) => (*n1).cmp(&*n2), + (&Number::Integer(n1), Number::Float(n2)) => OrderedFloat(n1.to_f64()).cmp(n2), (&Number::Float(n1), &Number::Integer(ref n2)) => n1.cmp(&OrderedFloat(n2.to_f64())), - (&Number::Integer(ref n1), &Number::Rational(ref n2)) => { + (&Number::Integer(n1), &Number::Rational(n2)) => { #[cfg(feature = "num")] { Rational::from(&**n1).cmp(n2) } #[cfg(not(feature = "num"))] { - (&**n1).partial_cmp(&**n2).unwrap_or(Ordering::Less) + (&*n1).partial_cmp(&*n2).unwrap_or(Ordering::Less) } } - (&Number::Rational(ref n1), &Number::Integer(ref n2)) => { + (&Number::Rational(n1), &Number::Integer(n2)) => { #[cfg(feature = "num")] { (&**n1).cmp(&Rational::from(&**n2)) } #[cfg(not(feature = "num"))] { - (&**n1).partial_cmp(&**n2).unwrap_or(Ordering::Less) + (&*n1).partial_cmp(&*n2).unwrap_or(Ordering::Less) } } - (&Number::Rational(ref n1), &Number::Float(n2)) => OrderedFloat(n1.to_f64()).cmp(&n2), - (&Number::Float(n1), &Number::Rational(ref n2)) => n1.cmp(&OrderedFloat(n2.to_f64())), + (&Number::Rational(n1), &Number::Float(n2)) => OrderedFloat(n1.to_f64()).cmp(&n2), + (&Number::Float(n1), &Number::Rational(n2)) => n1.cmp(&OrderedFloat(n2.to_f64())), (&Number::Float(f1), &Number::Float(f2)) => f1.cmp(&f2), - (&Number::Rational(ref r1), &Number::Rational(ref r2)) => r1.cmp(&r2), + (&Number::Rational(r1), &Number::Rational(r2)) => (*r1).cmp(&*r2), } } } -- 2.54.0