Method: Eqn::Function::RoundBase#value
- Defined in:
- lib/eqn/function.rb
#value(fn) ⇒ Object
14 15 16 17 18 19 20 21 22 23 |
# File 'lib/eqn/function.rb', line 14 def value(fn) value = elements.shift.value raise ZeroDivisionError if value.is_a?(Float) && (value.abs == Float::INFINITY || value.nan?) if elements.empty? value.send(fn) else decimals = elements.shift.value (value * 10**decimals).send(fn).to_f / 10**decimals end end |