Class: NationalHolidays::Region

Inherits:
Object
  • Object
show all
Defined in:
lib/national_holidays/region.rb

Class Attribute Summary collapse

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(code) ⇒ Region

Returns a new instance of Region.



17
18
19
# File 'lib/national_holidays/region.rb', line 17

def initialize(code)
  @code = code.to_sym
end

Class Attribute Details

.cacheObject (readonly)

Returns the value of attribute cache.



69
70
71
# File 'lib/national_holidays/region.rb', line 69

def cache
  @cache
end

Instance Attribute Details

#codeObject (readonly)

Returns the value of attribute code.



9
10
11
# File 'lib/national_holidays/region.rb', line 9

def code
  @code
end

Class Method Details

.allObject



11
12
13
14
15
# File 'lib/national_holidays/region.rb', line 11

def self.all
  Dir.glob("#{NationalHolidays.config_directory}/*/*.yml").map do |region_filename|
    new(File.basename(region_filename).sub(/\.yml/, ''))
  end.sort_by(&:code)
end

Instance Method Details

#all_holidaysObject



25
26
27
# File 'lib/national_holidays/region.rb', line 25

def all_holidays
  holidays
end

#holidays_after(date) ⇒ Object



41
42
43
# File 'lib/national_holidays/region.rb', line 41

def holidays_after(date)
  holidays(date.next_day, nil)
end

#holidays_before(date) ⇒ Object



33
34
35
# File 'lib/national_holidays/region.rb', line 33

def holidays_before(date)
  holidays(nil, date.prev_day)
end

#holidays_between(start_date, end_date) ⇒ Object



45
46
47
# File 'lib/national_holidays/region.rb', line 45

def holidays_between(start_date, end_date)
  holidays(start_date, end_date)
end

#holidays_on_or_after(date) ⇒ Object



37
38
39
# File 'lib/national_holidays/region.rb', line 37

def holidays_on_or_after(date)
  holidays(date, nil)
end

#holidays_on_or_before(date) ⇒ Object



29
30
31
# File 'lib/national_holidays/region.rb', line 29

def holidays_on_or_before(date)
  holidays(nil, date)
end

#nameObject



21
22
23
# File 'lib/national_holidays/region.rb', line 21

def name
  config.fetch('name')
end