Class: Complex
Relationships & Source Files | |
Super Chains via Extension / Inclusion / Inheritance | |
Class Chain:
self,
::Numeric
|
|
Instance Chain:
self,
::Numeric
|
|
Inherits: |
Numeric
|
Defined in: | ext/bigdecimal/lib/bigdecimal/util.rb |
Instance Method Summary
-
#to_d ⇒ bigdecimal
Returns the value as a
::BigDecimal
.
Instance Method Details
#to_d ⇒ bigdecimal
#to_d(precision) ⇒ bigdecimal
bigdecimal
#to_d(precision) ⇒ bigdecimal
Returns the value as a ::BigDecimal
.
The precision
parameter is required for a rational complex number. This parameter is used to determine the number of significant digits for the result.
require 'bigdecimal'
require 'bigdecimal/util'
Complex(0.1234567, 0).to_d(4) # => 0.1235e0
Complex(Rational(22, 7), 0).to_d(3) # => 0.314e1
See also BigDecimal.new
.
# File 'ext/bigdecimal/lib/bigdecimal/util.rb', line 157
def to_d(*args) BigDecimal(self) unless self.imag.zero? # to raise eerror if args.length == 0 case self.real when Rational BigDecimal(self.real) # to raise error end end self.real.to_d(*args) end