# class ActiveRecord::ConnectionAdapters::PostgreSQLTypeMetadata

### Attributes

array[R]
fmod[R]
oid[R]

### Public Class Methods

new(type_metadata, oid: nil, fmod: nil) click to toggle source
Calls superclass method

    # File lib/active_record/connection_adapters/postgresql/type_metadata.rb, line 8
    def initialize(type_metadata, oid: nil, fmod: nil)
      super(type_metadata)
      @type_metadata = type_metadata
      @oid = oid
      @fmod = fmod
      @array = /\[\]$/.match?(type_metadata.sql_type)
    end

### Public Instance Methods

==(other) click to toggle source

    # File lib/active_record/connection_adapters/postgresql/type_metadata.rb, line 20
    def ==(other)
      other.is_a?(PostgreSQLTypeMetadata) &&
        attributes_for_hash == other.attributes_for_hash
    end

Also aliased as: eql?
eql?(other)
Alias for: ==
hash() click to toggle source

    # File lib/active_record/connection_adapters/postgresql/type_metadata.rb, line 26
    def hash
      attributes_for_hash.hash
    end

sql_type() click to toggle source
Calls superclass method

    # File lib/active_record/connection_adapters/postgresql/type_metadata.rb, line 16
    def sql_type
      super.gsub(/\[\]$/, "".freeze)
    end

### Protected Instance Methods

attributes_for_hash() click to toggle source

    # File lib/active_record/connection_adapters/postgresql/type_metadata.rb, line 32
    def attributes_for_hash
      [self.class, @type_metadata, oid, fmod]
    end