In Files
- bigdecimal/lib/bigdecimal/util.rb
Parent
Numeric
Methods
Rational
BigDecimal extends the native Rational class to provide the to_d method.
When you require BigDecimal in your application, this method will be available on Rational objects.
Public Instance Methods
to_d(precision) → bigdecimal
Converts a Rational to a BigDecimal.
The required precision
parameter is used to determine the
amount of significant digits for the result. See BigDecimal#div for more
information, as it is used along with the denominator and the
precision
for parameters.
r = (22/7.0).to_r # => (7077085128725065/2251799813685248) r.to_d(3) # => #<BigDecimal:1a44d08,'0.314E1',18(36)>
# File bigdecimal/lib/bigdecimal/util.rb, line 121 def to_d(precision) if precision <= 0 raise ArgumentError, "negative precision" end num = self.numerator BigDecimal(num).div(self.denominator, precision) end