class ActiveRecord::ConnectionAdapters::SQLServer::Type::DateTime
Public Instance Methods
deserialize(value)
click to toggle source
Calls superclass method
# File lib/active_record/connection_adapters/sqlserver/type/datetime.rb, line 23 def deserialize(value) value.is_a?(Data) ? super(value.value) : super end
quoted(value)
click to toggle source
# File lib/active_record/connection_adapters/sqlserver/type/datetime.rb, line 31 def quoted(value) Utils.quote_string_single(value) end
serialize(value)
click to toggle source
Calls superclass method
# File lib/active_record/connection_adapters/sqlserver/type/datetime.rb, line 14 def serialize(value) value = super return value unless value.acts_like?(:time) datetime = "#{value.to_formatted_s(:_sqlserver_datetime)}.#{quote_fractional(value)}" Data.new datetime, self end
sqlserver_type()
click to toggle source
# File lib/active_record/connection_adapters/sqlserver/type/datetime.rb, line 10 def sqlserver_type "datetime" end
type_cast_for_schema(value)
click to toggle source
# File lib/active_record/connection_adapters/sqlserver/type/datetime.rb, line 27 def type_cast_for_schema(value) serialize(value).quoted end
Private Instance Methods
fast_string_to_time(string)
click to toggle source
Calls superclass method
# File lib/active_record/connection_adapters/sqlserver/type/datetime.rb, line 37 def fast_string_to_time(string) time = ActiveSupport::TimeZone["UTC"].strptime(string, fast_string_to_time_format) new_time(time.year, time.month, time.day, time.hour, time.min, time.sec, Rational(time.nsec, 1_000)) rescue ArgumentError super end
fast_string_to_time_format()
click to toggle source
# File lib/active_record/connection_adapters/sqlserver/type/datetime.rb, line 45 def fast_string_to_time_format "#{::Time::DATE_FORMATS[:_sqlserver_datetime]}.%N" end