Class: Holidate

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

Class Method Summary collapse

Class Method Details

.christmas_day(year) ⇒ Object

Raises:

  • (ArgumentError)


58
59
60
61
# File 'lib/holidate.rb', line 58

def self.christmas_day year
  raise ArgumentError, "Invalid value for method #{__method__}: #{year.inspect}" unless year.is_a? Integer
  Date.new year, 12, 25
end

.columbus_day(year) ⇒ Object

Raises:

  • (ArgumentError)


40
41
42
43
# File 'lib/holidate.rb', line 40

def self.columbus_day year
  raise ArgumentError, "Invalid value for method #{__method__}: #{year.inspect}" unless year.is_a? Integer
  Date.new year, 10, (8 + (1 - Date.new(year, 10).wday)%7)
end

.independence_day(year) ⇒ Object

Raises:

  • (ArgumentError)


28
29
30
31
# File 'lib/holidate.rb', line 28

def self.independence_day year
  raise ArgumentError, "Invalid value for method #{__method__}: #{year.inspect}" unless year.is_a? Integer
  Date.new year, 7, 4
end

.labor_day(year) ⇒ Object

Raises:

  • (ArgumentError)


34
35
36
37
# File 'lib/holidate.rb', line 34

def self.labor_day year
  raise ArgumentError, "Invalid value for method #{__method__}: #{year.inspect}" unless year.is_a? Integer
  Date.new year, 9, (1 + (1 - Date.new(year, 9).wday)%7)
end

.martin_luther_king_jr_day(year) ⇒ Object

Raises:

  • (ArgumentError)


10
11
12
13
# File 'lib/holidate.rb', line 10

def self.martin_luther_king_jr_day year
  raise ArgumentError, "Invalid value for method #{__method__}: #{year.inspect}" unless year.is_a? Integer
  Date.new year, 1, (15 + (1 - Date.new(year, 1).wday)%7)
end

.memorial_day(year) ⇒ Object

Raises:

  • (ArgumentError)


22
23
24
25
# File 'lib/holidate.rb', line 22

def self.memorial_day year
  raise ArgumentError, "Invalid value for method #{__method__}: #{year.inspect}" unless year.is_a? Integer
  Date.new year, 5, (31 - (Date.new(year, 5, 31).wday - 1)%7)
end

.new_years_day(year) ⇒ Object

Raises:

  • (ArgumentError)


4
5
6
7
# File 'lib/holidate.rb', line 4

def self.new_years_day year
  raise ArgumentError, "Invalid value for method #{__method__}: #{year.inspect}" unless year.is_a? Integer
  Date.new year, 1
end

.thanksgiving_day(year) ⇒ Object

Raises:

  • (ArgumentError)


52
53
54
55
# File 'lib/holidate.rb', line 52

def self.thanksgiving_day year
  raise ArgumentError, "Invalid value for method #{__method__}: #{year.inspect}" unless year.is_a? Integer
  Date.new year, 11, (22 + (4 - Date.new(year, 11).wday)%7)
end

.veterans_day(year) ⇒ Object

Raises:

  • (ArgumentError)


46
47
48
49
# File 'lib/holidate.rb', line 46

def self.veterans_day year
  raise ArgumentError, "Invalid value for method #{__method__}: #{year.inspect}" unless year.is_a? Integer
  Date.new year, 11, 11
end

.washingtons_birthday(year) ⇒ Object

Raises:

  • (ArgumentError)


16
17
18
19
# File 'lib/holidate.rb', line 16

def self.washingtons_birthday year
  raise ArgumentError, "Invalid value for method #{__method__}: #{year.inspect}" unless year.is_a? Integer
  Date.new year, 2, (15 + (1 - Date.new(year, 2).wday)%7)
end