Class: DataMaps::Converter::Numeric

Inherits:
Base show all
Defined in:
lib/data_maps/converter/numeric.rb

Overview

Converts numeric values

Since:

  • 0.0.1

Instance Attribute Summary

Attributes inherited from Executable

#@option, #option

Instance Method Summary collapse

Methods inherited from Executable

#initialize, valid_collection?

Constructor Details

This class inherits a constructor from DataMaps::Executable

Instance Method Details

#execute(data) ⇒ Object

The execute method to convert the given data

Parameters:

  • data (mixed)

Raises:

Since:

  • 0.0.1



10
11
12
13
14
15
16
17
18
19
# File 'lib/data_maps/converter/numeric.rb', line 10

def execute(data)
  raise DataMaps::Errors::InvalidDataError.new("The given data is not a numeric: #{data}") unless is_numeric?(data)

  case option
    when 'Integer' then data.to_i
    when 'Float' then data.to_f
    when Integer then data.to_f.round(option)
    else data
  end
end