Module: RiCal::CoreExtensions::Time::Conversions
- Included in:
- Time
- Defined in:
- lib/ri_cal/core_extensions/time/conversions.rb
Overview
-
©2009 Rick DeNatale
-
All rights reserved. Refer to the file README.txt for the license
Instance Method Summary collapse
-
#to_datetime ⇒ Object
Converts a Time instance to a Ruby DateTime instance, preserving UTC offset.
-
#to_ri_cal_date_time_value(timezone_finder = nil) ⇒ Object
(also: #to_ri_cal_date_or_date_time_value, #to_ri_cal_occurrence_list_value)
Return an RiCal::PropertyValue::DateTime representing the receiver.
-
#to_ri_cal_property_value(timezone_finder = nil) ⇒ Object
Return the natural ri_cal_property for this object.
-
#with_floating_timezone ⇒ Object
Return a copy of this object which will be interpreted as a floating time.
Instance Method Details
#to_datetime ⇒ Object
Converts a Time instance to a Ruby DateTime instance, preserving UTC offset.
my_time = Time.now # => Mon Nov 12 23:04:21 -0500 2007
my_time.to_datetime # => Mon, 12 Nov 2007 23:04:21 -0500
your_time = Time.parse("1/13/2009 1:13:03 P.M.") # => Tue Jan 13 13:13:03 -0500 2009
your_time.to_datetime # => Tue, 13 Jan 2009 13:13:03 -0500
37 38 39 40 |
# File 'lib/ri_cal/core_extensions/time/conversions.rb', line 37 def to_datetime # 86400 is the number of seconds in a day ::DateTime.civil(year, month, day, hour, min, sec, RiCal.RationalOffset[utc_offset]) end |
#to_ri_cal_date_time_value(timezone_finder = nil) ⇒ Object Also known as: to_ri_cal_date_or_date_time_value, to_ri_cal_occurrence_list_value
Return an RiCal::PropertyValue::DateTime representing the receiver
9 10 11 12 13 14 |
# File 'lib/ri_cal/core_extensions/time/conversions.rb', line 9 def to_ri_cal_date_time_value(timezone_finder = nil) #:nodoc: RiCal::PropertyValue::DateTime.new( timezone_finder, :value => strftime("%Y%m%dT%H%M%S"), :params => {"TZID" => self.tzid || :default}) end |
#to_ri_cal_property_value(timezone_finder = nil) ⇒ Object
Return the natural ri_cal_property for this object
20 21 22 |
# File 'lib/ri_cal/core_extensions/time/conversions.rb', line 20 def to_ri_cal_property_value(timezone_finder = nil) #:nodoc: to_ri_cal_date_time_value(timezone_finder) end |
#with_floating_timezone ⇒ Object
Return a copy of this object which will be interpreted as a floating time.
25 26 27 |
# File 'lib/ri_cal/core_extensions/time/conversions.rb', line 25 def with_floating_timezone dup.set_tzid(:floating) end |