class ActiveSet::Paginating::EnumerableStrategy
Public Class Methods
new(set, operation_instructions)
click to toggle source
# File lib/active_set/paginating/enumerable_strategy.rb, line 6 def initialize(set, operation_instructions) @set = set @operation_instructions = operation_instructions end
Public Instance Methods
execute()
click to toggle source
# File lib/active_set/paginating/enumerable_strategy.rb, line 11 def execute return [] if @set.count <= @operation_instructions[:size] && @operation_instructions[:page] > 1 @set[page_start..page_end] || [] end
Private Instance Methods
page_end()
click to toggle source
# File lib/active_set/paginating/enumerable_strategy.rb, line 26 def page_end return page_start if @operation_instructions[:size] == 1 page_start + @operation_instructions[:size] - 1 end
page_start()
click to toggle source
# File lib/active_set/paginating/enumerable_strategy.rb, line 20 def page_start return 0 if @operation_instructions[:page] == 1 @operation_instructions[:size] * (@operation_instructions[:page] - 1) end