Class: Coercible::Coercer::Decimal

Inherits:
Numeric show all
Defined in:
lib/coercible/coercer/decimal.rb

Overview

Coerce BigDecimal values

Constant Summary collapse

FLOAT_FORMAT =
'F'.freeze

Constants inherited from Object

Object::COERCION_METHOD_REGEXP

Constants included from Options

Options::Undefined

Constants included from TypeLookup

TypeLookup::TYPE_FORMAT

Instance Attribute Summary

Attributes inherited from Object

#coercers

Instance Method Summary collapse

Methods inherited from Numeric

#to_float, #to_integer

Methods inherited from Object

#coerced?, #initialize, #inspect, #to_array, #to_hash, #to_integer

Methods included from Options

#accept_options, #accepted_options, extended, #options

Methods included from TypeLookup

#determine_type, extended, #primitive

Constructor Details

This class inherits a constructor from Coercible::Coercer::Object

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class Coercible::Coercer::Object

Instance Method Details

#to_decimal(value) ⇒ Fixnum

Passthrough the value

Examples:

Coercible::Coercion::BigDecimal.to_decimal(BigDecimal('1.0')) # => BigDecimal('1.0')

Parameters:

  • value (BigDecimal)

Returns:

  • (Fixnum)


34
35
36
# File 'lib/coercible/coercer/decimal.rb', line 34

def to_decimal(value)
  value
end

#to_string(value) ⇒ String

Coerce given value to String

Examples:

coercer[BigDecimal].to_string(BigDecimal('1.0')) # => "1.0"

Parameters:

  • value (BigDecimal)

Returns:



20
21
22
# File 'lib/coercible/coercer/decimal.rb', line 20

def to_string(value)
  value.to_s(FLOAT_FORMAT)
end