def self::parse_connect_args( *args )
return '' if args.empty?
connopts = []
if args.last.is_a?( Hash )
opthash = args.pop
opthash.each do |key, val|
connopts.push( "%s=%s" % [key, PG::Connection.quote_connstr(val)] )
end
end
if args.length == 1 && args.first.to_s.index( '=' )
connopts.unshift( args.first )
else
args.each_with_index do |val, i|
next unless val
key = CONNECT_ARGUMENT_ORDER[ i ] or
raise ArgumentError, "Extra positional parameter %d: %p" % [ i+1, val ]
connopts.push( "%s=%s" % [key, PG::Connection.quote_connstr(val.to_s)] )
end
end
return connopts.join(' ')
end