--- !ruby/object:RI::ClassDescription 
attributes: []

class_methods: []

comment: 
- !ruby/struct:SM::Flow::P 
  body: "Top level module for holding all PostgreSQL-related modules and classes for Sequel. There are a few module level accessors that are added via metaprogramming. These are:"
- !ruby/object:SM::Flow::LIST 
  contents: 
  - !ruby/struct:SM::Flow::LI 
    label: "*"
    body: client_min_messages (only available when using the native adapter) - Change the minimum level of messages that PostgreSQL will send to the the client. The PostgreSQL default is NOTICE, the Sequel default is WARNING. Set to nil to not change the server default.
  - !ruby/struct:SM::Flow::LI 
    label: "*"
    body: force_standard_strings - Set to false to not force the use of standard strings
  - !ruby/struct:SM::Flow::LI 
    label: "*"
    body: use_iso_date_format (only available when using the native adapter) - Set to false to not change the date format to ISO. This disables one of Sequel's optimizations.
  type: :BULLET
- !ruby/struct:SM::Flow::P 
  body: "Changes in these settings only affect future connections. To make sure that they are applied, they should generally be called right after the Database object is instantiated and before a connection is actually made. For example, to use whatever the server defaults are:"
- !ruby/struct:SM::Flow::VERB 
  body: "  DB = Sequel.postgres(...)\n  Sequel::Postgres.client_min_messages = nil\n  Sequel::Postgres.force_standard_strings = false\n  Sequel::Postgres.use_iso_date_format = false\n  # A connection to the server is not made until here\n  DB[:t].all\n"
- !ruby/struct:SM::Flow::P 
  body: The reason they can't be done earlier is that the Sequel::Postgres module is not loaded until a Database object which uses PostgreSQL is created.
constants: 
- !ruby/object:RI::Constant 
  comment: 
  - !ruby/struct:SM::Flow::P 
    body: Hash with integer keys and proc values for converting PostgreSQL types.
  name: PG_TYPES
  value: "{       16 => lambda{ |s| s == 't' }, # boolean       17 => lambda{ |s| Adapter.unescape_bytea(s).to_blob }, # bytea       20 => lambda{ |s| s.to_i }, # int8       21 => lambda{ |s| s.to_i }, # int2       22 => lambda{ |s| s.to_i }, # int2vector       23 => lambda{ |s| s.to_i }, # int4       26 => lambda{ |s| s.to_i }, # oid       700 => lambda{ |s| s.to_f }, # float4       701 => lambda{ |s| s.to_f }, # float8       790 => lambda{ |s| s.to_d }, # money       1082 => lambda{ |s| @use_iso_date_format ? Date.new(*s.split(\"-\").map{|x| x.to_i}) : s.to_date }, # date       1083 => lambda{ |s| s.to_time }, # time without time zone       1114 => lambda{ |s| s.to_sequel_time }, # timestamp without time zone       1184 => lambda{ |s| s.to_sequel_time }, # timestamp with time zone       1266 => lambda{ |s| s.to_time }, # time with time zone       1700 => lambda{ |s| s.to_d }, # numeric     }"
- !ruby/object:RI::Constant 
  comment: 
  - !ruby/struct:SM::Flow::P 
    body: Array of exceptions that need to be converted. JDBC uses NativeExceptions, the native adapter uses PGError.
  name: CONVERTED_EXCEPTIONS
  value: "[]"
- !ruby/object:RI::Constant 
  comment: 
  name: SELECT_PK
  value: "proc do |schema, table| <<-end_sql         SELECT pg_attribute.attname         FROM pg_class, pg_attribute, pg_index, pg_namespace         WHERE pg_class.oid = pg_attribute.attrelid           AND pg_class.relnamespace  = pg_namespace.oid           AND pg_class.oid = pg_index.indrelid           AND pg_index.indkey[0] = pg_attribute.attnum           AND pg_index.indisprimary = 't'           #{\"AND pg_namespace.nspname = '#{schema}'\" if schema}           AND pg_class.relname = '#{table}'       end_sql"
full_name: Sequel::Postgres
includes: []

instance_methods: []

name: Postgres
superclass: 
