class Feriados::Calendar

Attributes

rules[RW]

Public Class Methods

new() click to toggle source
# File lib/feriados/calendar.rb, line 6
def initialize
  @rules = Set.new
end

Public Instance Methods

==(other) click to toggle source
# File lib/feriados/calendar.rb, line 34
def ==(other)
  eql?(other)
end
add(rule) click to toggle source
# File lib/feriados/calendar.rb, line 18
def add(rule)
  rules << rule
end
eql?(other) click to toggle source
# File lib/feriados/calendar.rb, line 30
def eql?(other)
  rules == other.rules
end
holiday?(date) click to toggle source
# File lib/feriados/calendar.rb, line 10
def holiday?(date)
  rules.any? { |rule| rule.holiday?(date) }
end
holiday_name(date) click to toggle source
# File lib/feriados/calendar.rb, line 14
def holiday_name(date)
  rules.find { |rule| rule.holiday?(date) }&.name
end
load(rules) click to toggle source
# File lib/feriados/calendar.rb, line 26
def load(rules)
  Loader.new(rules, self).load
end
remove(rule) click to toggle source
# File lib/feriados/calendar.rb, line 22
def remove(rule)
  rules.delete(rule)
end