aboutsummaryrefslogblamecommitdiffstats
path: root/activerecord/lib/active_record/connection_adapters/postgresql/column.rb
blob: 37e5c3859cca810df8823e597a28eedb7a036a5e (plain) (tree)
1
2
3
4
5
6
7
8
9





                                                                      
                                                                                                   

                              
                                                                                 

                        
                                                         

           
                                            
         


       
module ActiveRecord
  module ConnectionAdapters
    # PostgreSQL-specific extensions to column definitions in a table.
    class PostgreSQLColumn < Column #:nodoc:
      attr_accessor :array

      def initialize(name, default, cast_type, sql_type = nil, null = true, default_function = nil)
        if sql_type =~ /\[\]$/
          @array = true
          super(name, default, cast_type, sql_type[0..sql_type.length - 3], null)
        else
          @array = false
          super(name, default, cast_type, sql_type, null)
        end

        @default_function = default_function
      end
    end
  end
end