summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
authorYukihiro "Matz" Matsumoto <[email protected]>2019-05-29 11:49:21 +0900
committerYukihiro "Matz" Matsumoto <[email protected]>2019-05-29 11:49:21 +0900
commit855f2cdeea5c305e71721ef3c146eaa6472815b8 (patch)
treee06492f696b60807be9c5de6e9856fc1673a88d0
parent2b81ea7ec1c7645b13b097e5b249cbc99f374da7 (diff)
downloadmruby-855f2cdeea5c305e71721ef3c146eaa6472815b8.tar.gz
mruby-855f2cdeea5c305e71721ef3c146eaa6472815b8.zip
Slightly simplify `Rational#==`; ref #4475
-rw-r--r--mrbgems/mruby-rational/mrblib/rational.rb7
1 files changed, 3 insertions, 4 deletions
diff --git a/mrbgems/mruby-rational/mrblib/rational.rb b/mrbgems/mruby-rational/mrblib/rational.rb
index 54d9a955f..93af72b96 100644
--- a/mrbgems/mruby-rational/mrblib/rational.rb
+++ b/mrbgems/mruby-rational/mrblib/rational.rb
@@ -64,11 +64,10 @@ class Rational < Numeric
end
def ==(rhs)
- if rhs.is_a?(Integral)
- return numerator == rhs if denominator == 1
- rhs = Rational(rhs)
+ return true if self.equal?(rhs)
+ if rhs.is_a?(Integral) && denominator == 1
+ return numerator == rhs
end
-
if rhs.is_a?(Rational)
numerator * rhs.denominator == denominator * rhs.numerator
else