Class: Kaminari::Logarithmic::Strategies::EvenStrategy

Inherits:
BaseStrategy
  • Object
show all
Defined in:
lib/kaminari/logarithmic/strategies/even_strategy.rb

Instance Method Summary collapse

Constructor Details

#initialize(start, finish, base = 2) ⇒ EvenStrategy

Returns a new instance of EvenStrategy.



5
6
7
8
9
# File 'lib/kaminari/logarithmic/strategies/even_strategy.rb', line 5

def initialize(start, finish, base = 2)
  @global_start = start
  @global_finish = finish
  @base = base
end

Instance Method Details

#buildObject



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
# File 'lib/kaminari/logarithmic/strategies/even_strategy.rb', line 11

def build
  value = @global_start
  step = @base
  result = []
  while enough?(value)
    result << value
    if asc?
      value = value + step
    else
      value = value - step
    end
    step *= @base
  end
  result
end