11 12 13 14 15 16 17 18 19 20
# File 'lib/eqn/number.rb', line 11 def value # Store sign if any. sign_negative = elements.shift.negative? if elements.first.is_a? Terminal::Sign # Evaluate float. value = elements.shift.value # Apply sign if any. sign_negative ? -value : value end