Sha256: 57c2442d797885dda306b7e3b699a19daa1b36a716955bd27704ee91def4b079
Contents?: true
Size: 1.23 KB
Versions: 5
Compression:
Stored size: 1.23 KB
Contents
=begin Copyright (C) 2008 Sam Roberts This library is free software; you can redistribute it and/or modify it under the same terms as the ruby language itself, see the file COPYING for details. =end require 'date' # Extensions to builtin Time allowing addition to Time by multiples of other # intervals than a second. class Time # 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. def plus_year(years) Time.zone.local(year + years, month, day, hour, min, sec, usec) end # 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! def plus_month(months) d = Date.new(year, month, day) d >>= months Time.zone.local(d.year, d.month, d.day, hour, min, sec, usec) end # 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? def plus_day(days) d = Date.new(year, month, day) d += days Time.zone.local(d.year, d.month, d.day, hour, min, sec, usec) end end
Version data entries
5 entries across 5 versions & 3 rubygems
Version | Path |
---|---|
fraser-vpim-0.658 | lib/vpim/time.rb |
fraser-vpim-0.659 | lib/vpim/time.rb |
fraser-vpim-rails-0.658 | lib/vpim/time.rb |
fraser-vpim-rails-0.659 | lib/vpim/time.rb |
vpim-rails-0.661 | lib/vpim/time.rb |