aboutsummaryrefslogblamecommitdiffstats
path: root/activesupport/lib/active_support/core_ext/date_time/compatibility.rb
blob: 7600a067cc57962e93a73cd68ab8cb366e59fb3f (plain) (tree)
1
2
3
4
5
6
7
8
9
                             
 

                                                             

              

                                    
                                         
 

                                                                 
                                                            



                                                                 
   
# frozen_string_literal: true

require "active_support/core_ext/date_and_time/compatibility"
require "active_support/core_ext/module/redefine_method"

class DateTime
  include DateAndTime::Compatibility

  silence_redefinition_of_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 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