class Enumdate::DateEnumerator::ByDateList

Enumerate dates from list.

Public Class Methods

new(date_list: []) click to toggle source
# File lib/enumdate/date_enumerator.rb, line 241
def initialize(date_list: [])
  @date_list = date_list
  @duration_until = nil
end

Public Instance Methods

<<(date) click to toggle source
# File lib/enumdate/date_enumerator.rb, line 246
def <<(date)
  @date_list << date
end
each() { |date| ... } click to toggle source
# File lib/enumdate/date_enumerator.rb, line 260
def each
  return enum_for(:each) unless block_given?

  @date_list.sort.each do |date|
    next if @fist_date && date < @first_date
    break if @duration_until && date > @duration_until

    yield date
  end
end
forward_to(date) click to toggle source
# File lib/enumdate/date_enumerator.rb, line 256
def forward_to(date)
  @first_date = date
end
rewind() click to toggle source
# File lib/enumdate/date_enumerator.rb, line 250
def rewind; end
until(date) click to toggle source
# File lib/enumdate/date_enumerator.rb, line 252
def until(date)
  @duration_until = date
end