class Estratto::Data::Float

Public Instance Methods

coerce() click to toggle source
# File lib/estratto/data/float.rb, line 7
def coerce
  if expected_comma
    from_comma_data
  elsif custom_precision
    from_precision_data
  else
    data.to_f
  end
end

Private Instance Methods

custom_precision() click to toggle source
# File lib/estratto/data/float.rb, line 23
def custom_precision
  formats.has_key?('precision')
end
expected_comma() click to toggle source
# File lib/estratto/data/float.rb, line 19
def expected_comma
  formats.dig('comma_format') || false
end
from_comma_data() click to toggle source
# File lib/estratto/data/float.rb, line 27
def from_comma_data
  data.gsub('.', '').gsub(',', '.').to_f
end
from_precision_data() click to toggle source
# File lib/estratto/data/float.rb, line 31
def from_precision_data
  data.to_f / (10**precision)
end
precision() click to toggle source
# File lib/estratto/data/float.rb, line 35
def precision
  formats['precision'].to_i || 2
end