Method: Streamer::Functors::Multiply#multiply

Defined in:
lib/streamer/functors/multiply.rb

#multiplyObject



9
10
11
12
13
14
15
16
17
18
# File 'lib/streamer/functors/multiply.rb', line 9

def multiply
  options.fetch(:terms).inject(1) do |total, item|
    unless item.is_a?(String) || item.is_a?(Numeric)
      fail "Streamer::Functor invalid term: #{item}"
    end
    val = total * (prop(item) || 0) if item.is_a? String
    val = total * item if item.is_a? Numeric
    val
  end
end