class Time
Extensions to builtin Time allowing addition to Time by multiples of other intervals than a second.
Public Instance Methods
plus_day(days)
click to toggle source
Returns a new Time, days
later than
this time. Does this do as I expect over DST? What if the hour doesn't
exist in the next day, due to DST changes?
# File lib/vpim/time.rb, line 34 def plus_day(days) d = Date.new(year, month, day) d += days Time.local(d.year, d.month, d.day, hour, min, sec, usec) end
plus_month(months)
click to toggle source
Returns a new Time, months
later than
this time. The day will be rounded down if it is not valid for that month.
Jan 31 plus 1 month will be on Feb 28!
# File lib/vpim/time.rb, line 25 def plus_month(months) d = Date.new(year, month, day) d >>= months Time.local(d.year, d.month, d.day, hour, min, sec, usec) end
plus_year(years)
click to toggle source
Returns a new Time, years
later than
this time. Feb 29 of a leap year will be rounded up to Mar 1 if the target
date is not a leap year.
# File lib/vpim/time.rb, line 18 def plus_year(years) Time.local(year + years, month, day, hour, min, sec, usec) end