class Chronic::MiniDate
Attributes
day[RW]
month[RW]
Public Class Methods
from_time(time)
click to toggle source
# File lib/chronic/mini_date.rb, line 5 def self.from_time(time) new(time.month, time.day) end
new(month, day)
click to toggle source
# File lib/chronic/mini_date.rb, line 9 def initialize(month, day) unless (1..12).include?(month) raise ArgumentError, "1..12 are valid months" end @month = month @day = day end
Public Instance Methods
equals?(other)
click to toggle source
# File lib/chronic/mini_date.rb, line 34 def equals?(other) @month == other.month and @day == other.day end
is_between?(md_start, md_end)
click to toggle source
# File lib/chronic/mini_date.rb, line 18 def is_between?(md_start, md_end) return false if (@month == md_start.month && @month == md_end.month) && (@day < md_start.day || @day > md_end.day) return true if (@month == md_start.month && @day >= md_start.day) || (@month == md_end.month && @day <= md_end.day) i = (md_start.month % 12) + 1 until i == md_end.month return true if @month == i i = (i % 12) + 1 end return false end