123456789_123456789_123456789_123456789_123456789_

Class: ActiveRecord::ConnectionAdapters::PostgreSQLTypeMetadata

Relationships & Source Files
Inherits: ActiveRecord::ConnectionAdapters::SqlTypeMetadata
  • ::Object
Defined in: activerecord/lib/active_record/connection_adapters/postgresql/type_metadata.rb

Class Method Summary

Instance Attribute Summary

Instance Method Summary

Constructor Details

.new(type_metadata, oid: nil, fmod: nil) ⇒ PostgreSQLTypeMetadata

[ GitHub ]

  
# File 'activerecord/lib/active_record/connection_adapters/postgresql/type_metadata.rb', line 10

def initialize(, oid: nil, fmod: nil)
  super()
  @type_metadata = 
  @oid = oid
  @fmod = fmod
  @array = /\[\]$/.match?(.sql_type)
end

Instance Attribute Details

#array (readonly)

[ GitHub ]

  
# File 'activerecord/lib/active_record/connection_adapters/postgresql/type_metadata.rb', line 8

attr_reader :oid, :fmod, :array

#fmod (readonly)

[ GitHub ]

  
# File 'activerecord/lib/active_record/connection_adapters/postgresql/type_metadata.rb', line 8

attr_reader :oid, :fmod, :array

#oid (readonly)

[ GitHub ]

  
# File 'activerecord/lib/active_record/connection_adapters/postgresql/type_metadata.rb', line 8

attr_reader :oid, :fmod, :array

Instance Method Details

#==(other) Also known as: #eql?

[ GitHub ]

  
# File 'activerecord/lib/active_record/connection_adapters/postgresql/type_metadata.rb', line 22

def ==(other)
  other.is_a?(PostgreSQLTypeMetadata) &&
    attributes_for_hash == other.attributes_for_hash
end

#eql?(other)

Alias for #==.

[ GitHub ]

  
# File 'activerecord/lib/active_record/connection_adapters/postgresql/type_metadata.rb', line 26

alias eql? ==

#hash

[ GitHub ]

  
# File 'activerecord/lib/active_record/connection_adapters/postgresql/type_metadata.rb', line 28

def hash
  attributes_for_hash.hash
end

#sql_type

[ GitHub ]

  
# File 'activerecord/lib/active_record/connection_adapters/postgresql/type_metadata.rb', line 18

def sql_type
  super.gsub(/\[\]$/, "".freeze)
end