# File lib/dbd/Pg.rb, line 108 def self.parse_type(ftype) type = ftype pos = ftype.index('(') decimal = nil size = nil array_of_type = nil if pos != nil type = ftype[0..pos-1] size = ftype[pos+1..-2] pos = size.index(',') if pos != nil size, decimal = size.split(',', 2) size = size.to_i decimal = decimal.to_i else size = size.to_i end end if type =~ /\[\]$/ type.sub!(/\[\]$/, '') array_of_type = true end return { :ftype => ftype.dup, :type => type, :size => size, :decimal => decimal, :array => array_of_type } end