Class: VerifiedHolidays::Dataset
- Inherits:
-
Object
- Object
- VerifiedHolidays::Dataset
- Includes:
- Singleton
- Defined in:
- lib/verified_holidays/dataset.rb
Instance Method Summary collapse
- #all ⇒ Object (also: #holidays)
- #between(start_date, last_date) ⇒ Object
- #holiday?(date) ⇒ Boolean
-
#initialize ⇒ Dataset
constructor
A new instance of Dataset.
- #name(date) ⇒ Object
- #year(year) ⇒ Object
Constructor Details
#initialize ⇒ Dataset
Returns a new instance of Dataset.
11 12 13 |
# File 'lib/verified_holidays/dataset.rb', line 11 def initialize @holidays = load_yaml end |
Instance Method Details
#all ⇒ Object Also known as: holidays
15 16 17 |
# File 'lib/verified_holidays/dataset.rb', line 15 def all @holidays end |
#between(start_date, last_date) ⇒ Object
20 21 22 23 24 25 26 |
# File 'lib/verified_holidays/dataset.rb', line 20 def between(start_date, last_date) start_date = to_date(start_date) last_date = to_date(last_date) @holidays.each_with_object([]) do |(date, holiday), result| result << holiday if date.between?(start_date, last_date) end end |
#holiday?(date) ⇒ Boolean
28 29 30 |
# File 'lib/verified_holidays/dataset.rb', line 28 def holiday?(date) @holidays.key?(to_date(date)) end |
#name(date) ⇒ Object
32 33 34 |
# File 'lib/verified_holidays/dataset.rb', line 32 def name(date) @holidays[to_date(date)]&.name end |
#year(year) ⇒ Object
36 37 38 39 40 |
# File 'lib/verified_holidays/dataset.rb', line 36 def year(year) @holidays.each_with_object([]) do |(date, holiday), result| result << holiday if date.year == year end end |