diff options
-rw-r--r-- | ChangeLog | 6 | ||||
-rw-r--r-- | lib/rational.rb | 4 |
2 files changed, 9 insertions, 1 deletions
@@ -1,3 +1,9 @@ +Tue May 8 19:32:18 2007 Keiju Ishitsuka <keiju@ruby-lang.org> + + * lib/rational.rb: fix high-precision Rationals cannot be + converted to Floats. [ruby-Bugs:10502], [ruby-core:11069], + [ruby-dev:30743] + Mon May 7 10:59:55 2007 Kouhei Sutou <kou@cozmixng.org> * lib/rss/image.rb, test/rss/test_image.rb: fixed Image module diff --git a/lib/rational.rb b/lib/rational.rb index 5ed283cda0..73e8cef8e9 100644 --- a/lib/rational.rb +++ b/lib/rational.rb @@ -354,7 +354,7 @@ class Rational < Numeric # Converts the rational to a Float. # def to_f - @numerator.to_f/@denominator.to_f + @numerator.quof(@denominator) end # @@ -476,6 +476,7 @@ class Integer end class Fixnum + alias quof quo undef quo # If Rational is defined, returns a Rational number instead of a Fixnum. def quo(other) @@ -503,6 +504,7 @@ class Bignum alias power! ** end + alias quof quo undef quo # If Rational is defined, returns a Rational number instead of a Bignum. def quo(other) |