Class: MovingAvg::Calculator

Inherits:
Object
  • Object
show all
Defined in:
lib/moving_avg/calculator.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(strategy:, options: {}) ⇒ Calculator

Returns a new instance of Calculator.



5
6
7
8
# File 'lib/moving_avg/calculator.rb', line 5

def initialize(strategy:, options: {})
  @strategy = strategy
  @options = options
end

Instance Attribute Details

#optionsObject (readonly)

Returns the value of attribute options.



3
4
5
# File 'lib/moving_avg/calculator.rb', line 3

def options
  @options
end

#strategyObject (readonly)

Returns the value of attribute strategy.



3
4
5
# File 'lib/moving_avg/calculator.rb', line 3

def strategy
  @strategy
end

Instance Method Details

#moving_avg(items) ⇒ Object



10
11
12
# File 'lib/moving_avg/calculator.rb', line 10

def moving_avg(items)
  MovingAvg::Base.public_send(strategy, items)
end