Type conversion map class for Sequel’s use of Amalgamite
Public Class methods
new
(db)
Store the related database object, in order to be able to correctly handle the database timezone.
[show source]
# File lib/sequel/adapters/amalgalite.rb, line 20 def initialize(db) @db = db end
Public Instance methods
blob
(s)
Return blobs as instances of Sequel::SQL::Blob instead of Amalgamite::Blob
[show source]
# File lib/sequel/adapters/amalgalite.rb, line 26 def blob(s) SQL::Blob.new(s) end
datetime
(s)
Return datetime types as instances of Sequel.datetime_class
[show source]
# File lib/sequel/adapters/amalgalite.rb, line 37 def datetime(s) @db.to_application_timestamp(s) end
decimal
(s)
Return numeric/decimal types as instances of BigDecimal instead of Float
[show source]
# File lib/sequel/adapters/amalgalite.rb, line 32 def decimal(s) BigDecimal.new(s) end
result_value_of
(declared_type, value)
Don’t raise an error if the value is a string and the declared type doesn’t match a known type, just return the value.
[show source]
# File lib/sequel/adapters/amalgalite.rb, line 47 def result_value_of(declared_type, value) if value.is_a?(::Amalgalite::Blob) SQL::Blob.new(value.to_s) elsif value.is_a?(String) && declared_type (meth = self.class.sql_to_method(declared_type.downcase)) ? send(meth, value) : value else super end end
time
(s)
[show source]
# File lib/sequel/adapters/amalgalite.rb, line 41 def time(s) Sequel.string_to_time(s) end