lib/project/coercer/numeric.rb in motion_coercible-0.2.0 vs lib/project/coercer/numeric.rb in motion_coercible-0.2.0.1

- old
+ new

@@ -1,5 +1,7 @@ +motion_require 'object' + module Coercible class Coercer # Base class for all numeric Coercion classes class Numeric < Object @@ -43,9 +45,23 @@ # @return [Float] # # @api public def to_float(value) value.to_f + end + + # Coerce a BigDecimal instance from a numeric object + # + # @example + # coercer[Numeric].to_decimal(Rational(2, 2)) # => BigDecimal('1.0') + # + # @param [Numeric] value + # + # @return [BigDecimal] + # + # @api public + def to_decimal(value) + to_string(value).to_d end end # class Numeric end # class Coercer