mirror of
https://github.com/rails/rails.git
synced 2022-11-09 12:12:34 -05:00
Move to_time
to DateTime
compatibility.rb file
We are overriding it in `Time` and `ActiveSupport::TimeWithZone` so there's no point in having it in the `DateAndTime::Compatibility` module. Also add some docs for the `to_time` implementations.
This commit is contained in:
parent
ee33b9e93a
commit
5055370828
4 changed files with 16 additions and 6 deletions
|
@ -10,9 +10,5 @@ module DateAndTime
|
|||
# this behavior, but new apps will have an initializer that sets
|
||||
# this to true, because the new behavior is preferred.
|
||||
mattr_accessor(:preserve_timezone, instance_writer: false) { false }
|
||||
|
||||
def to_time
|
||||
preserve_timezone ? getlocal(utc_offset) : getlocal
|
||||
end
|
||||
end
|
||||
end
|
||||
|
|
|
@ -1,5 +1,15 @@
|
|||
require "active_support/core_ext/date_and_time/compatibility"
|
||||
|
||||
class DateTime
|
||||
prepend DateAndTime::Compatibility
|
||||
include DateAndTime::Compatibility
|
||||
|
||||
remove_possible_method :to_time
|
||||
|
||||
# Either return an instance of `Time` with the same UTC offset
|
||||
# as +self+ or an instance of `Time` representing the same time
|
||||
# in the the local system timezone depending on the setting of
|
||||
# on the setting of +ActiveSupport.to_time_preserves_timezone+.
|
||||
def to_time
|
||||
preserve_timezone ? getlocal(utc_offset) : getlocal
|
||||
end
|
||||
end
|
||||
|
|
|
@ -6,6 +6,8 @@ class Time
|
|||
|
||||
remove_possible_method :to_time
|
||||
|
||||
# Either return +self+ or the time in the local system timezone depending
|
||||
# on the setting of +ActiveSupport.to_time_preserves_timezone+.
|
||||
def to_time
|
||||
preserve_timezone ? self : getlocal
|
||||
end
|
||||
|
|
|
@ -411,7 +411,9 @@ module ActiveSupport
|
|||
@to_datetime ||= utc.to_datetime.new_offset(Rational(utc_offset, 86_400))
|
||||
end
|
||||
|
||||
# Returns an instance of <tt>Time</tt>
|
||||
# Returns an instance of +Time+, either with the same UTC offset
|
||||
# as +self+ or in the local system timezone depending on the setting
|
||||
# of +ActiveSupport.to_time_preserves_timezone+.
|
||||
def to_time
|
||||
if preserve_timezone
|
||||
@to_time_with_instance_offset ||= getlocal(utc_offset)
|
||||
|
|
Loading…
Reference in a new issue