module SIValue
Constants
- PREFIX_MAGNITUDES
Public Class Methods
from(str)
click to toggle source
Returns BigDecimal
# File lib/sivalue.rb, line 9 def self.from(str) _, num, prefix = str.match(/^([-+]?[0-9]*\.?[0-9]*)(#{PREFIX_MAGNITUDES.keys.join('|')})?/oi).to_a if num if prefix BigDecimal.new(num) * 10**PREFIX_MAGNITUDES[prefix] else BigDecimal.new(num) end else 0.0 end end