class ActiveRecord::ConnectionAdapters::RedshiftAdapter::OID::TypeMap
Public Class Methods
new()
click to toggle source
# File lib/active_record/connection_adapters/redshift/oid.rb, line 251 def initialize @mapping = {} end
Public Instance Methods
[](oid)
click to toggle source
# File lib/active_record/connection_adapters/redshift/oid.rb, line 259 def [](oid) @mapping[oid] end
[]=(oid, type)
click to toggle source
# File lib/active_record/connection_adapters/redshift/oid.rb, line 255 def []=(oid, type) @mapping[oid] = type end
clear()
click to toggle source
# File lib/active_record/connection_adapters/redshift/oid.rb, line 263 def clear @mapping.clear end
fetch(ftype, fmod) { |oid, fmod| ... }
click to toggle source
# File lib/active_record/connection_adapters/redshift/oid.rb, line 271 def fetch(ftype, fmod) # The type for the numeric depends on the width of the field, # so we'll do something special here. # # When dealing with decimal columns: # # places after decimal = fmod - 4 & 0xffff # places before decimal = (fmod - 4) >> 16 & 0xffff if ftype == 1700 && (fmod - 4 & 0xffff).zero? ftype = 23 end @mapping.fetch(ftype) { |oid| yield oid, fmod } end
key?(oid)
click to toggle source
# File lib/active_record/connection_adapters/redshift/oid.rb, line 267 def key?(oid) @mapping.key? oid end