postgresql-typed-0.4.5: A PostgreSQL library with compile-time SQL type inference and optional HDBC backend

Copyright2015 Dylan Simon
Safe HaskellNone
LanguageHaskell98

Database.PostgreSQL.Typed.Array

Contents

Description

Representaion of PostgreSQL's array type. Currently this only supports one-dimensional arrays. PostgreSQL arrays in theory can dynamically be any (rectangular) shape.

Synopsis

Documentation

type PGArray a = [Maybe a] Source #

The cannonical representation of a PostgreSQL array of any type, which may always contain NULLs. Currenly only one-dimetional arrays are supported, although in PostgreSQL, any array may be of any dimentionality.

class (PGType ta, PGType t) => PGArrayType ta t | ta -> t, t -> ta where Source #

Class indicating that the first PostgreSQL type is an array of the second. This implies PGParameter and PGColumn instances that will work for any type using comma as a delimiter (i.e., anything but box). This will only work with 1-dimensional arrays.

Methods

pgArrayElementType :: PGTypeName ta -> PGTypeName t Source #

pgArrayDelim :: PGTypeName ta -> Char Source #

The character used as a delimeter. The default , is correct for all standard types (except box).

Instances

PGType "\"char\"" => PGArrayType "\"char\"[]" "\"char\"" Source # 

Methods

pgArrayElementType :: PGTypeName "\"char\"[]" -> PGTypeName "\"char\"" Source #

pgArrayDelim :: PGTypeName "\"char\"[]" -> Char Source #

PGType "abstime" => PGArrayType "abstime[]" "abstime" Source # 

Methods

pgArrayElementType :: PGTypeName "abstime[]" -> PGTypeName "abstime" Source #

pgArrayDelim :: PGTypeName "abstime[]" -> Char Source #

PGType "aclitem" => PGArrayType "aclitem[]" "aclitem" Source # 

Methods

pgArrayElementType :: PGTypeName "aclitem[]" -> PGTypeName "aclitem" Source #

pgArrayDelim :: PGTypeName "aclitem[]" -> Char Source #

PGType "bigint" => PGArrayType "bigint[]" "bigint" Source # 

Methods

pgArrayElementType :: PGTypeName "bigint[]" -> PGTypeName "bigint" Source #

pgArrayDelim :: PGTypeName "bigint[]" -> Char Source #

PGType "bit" => PGArrayType "bit[]" "bit" Source # 
PGType "boolean" => PGArrayType "boolean[]" "boolean" Source # 

Methods

pgArrayElementType :: PGTypeName "boolean[]" -> PGTypeName "boolean" Source #

pgArrayDelim :: PGTypeName "boolean[]" -> Char Source #

PGType "box" => PGArrayType "box[]" "box" Source # 
PGType "bpchar" => PGArrayType "bpchar[]" "bpchar" Source # 

Methods

pgArrayElementType :: PGTypeName "bpchar[]" -> PGTypeName "bpchar" Source #

pgArrayDelim :: PGTypeName "bpchar[]" -> Char Source #

PGType "bytea" => PGArrayType "bytea[]" "bytea" Source # 

Methods

pgArrayElementType :: PGTypeName "bytea[]" -> PGTypeName "bytea" Source #

pgArrayDelim :: PGTypeName "bytea[]" -> Char Source #

PGType "character varying" => PGArrayType "character varying[]" "character varying" Source # 

Methods

pgArrayElementType :: PGTypeName "character varying[]" -> PGTypeName "character varying" Source #

pgArrayDelim :: PGTypeName "character varying[]" -> Char Source #

PGType "cid" => PGArrayType "cid[]" "cid" Source # 
PGType "cidr" => PGArrayType "cidr[]" "cidr" Source # 

Methods

pgArrayElementType :: PGTypeName "cidr[]" -> PGTypeName "cidr" Source #

pgArrayDelim :: PGTypeName "cidr[]" -> Char Source #

PGType "circle" => PGArrayType "circle[]" "circle" Source # 

Methods

pgArrayElementType :: PGTypeName "circle[]" -> PGTypeName "circle" Source #

pgArrayDelim :: PGTypeName "circle[]" -> Char Source #

PGType "cstring" => PGArrayType "cstring[]" "cstring" Source # 

Methods

pgArrayElementType :: PGTypeName "cstring[]" -> PGTypeName "cstring" Source #

pgArrayDelim :: PGTypeName "cstring[]" -> Char Source #

PGType "date" => PGArrayType "date[]" "date" Source # 

Methods

pgArrayElementType :: PGTypeName "date[]" -> PGTypeName "date" Source #

pgArrayDelim :: PGTypeName "date[]" -> Char Source #

PGType "daterange" => PGArrayType "daterange[]" "daterange" Source # 

Methods

pgArrayElementType :: PGTypeName "daterange[]" -> PGTypeName "daterange" Source #

pgArrayDelim :: PGTypeName "daterange[]" -> Char Source #

PGType "double precision" => PGArrayType "double precision[]" "double precision" Source # 

Methods

pgArrayElementType :: PGTypeName "double precision[]" -> PGTypeName "double precision" Source #

pgArrayDelim :: PGTypeName "double precision[]" -> Char Source #

PGType "gtsvector" => PGArrayType "gtsvector[]" "gtsvector" Source # 

Methods

pgArrayElementType :: PGTypeName "gtsvector[]" -> PGTypeName "gtsvector" Source #

pgArrayDelim :: PGTypeName "gtsvector[]" -> Char Source #

PGType "inet" => PGArrayType "inet[]" "inet" Source # 

Methods

pgArrayElementType :: PGTypeName "inet[]" -> PGTypeName "inet" Source #

pgArrayDelim :: PGTypeName "inet[]" -> Char Source #

PGType "int2vector" => PGArrayType "int2vector[]" "int2vector" Source # 

Methods

pgArrayElementType :: PGTypeName "int2vector[]" -> PGTypeName "int2vector" Source #

pgArrayDelim :: PGTypeName "int2vector[]" -> Char Source #

PGType "int4range" => PGArrayType "int4range[]" "int4range" Source # 

Methods

pgArrayElementType :: PGTypeName "int4range[]" -> PGTypeName "int4range" Source #

pgArrayDelim :: PGTypeName "int4range[]" -> Char Source #

PGType "int8range" => PGArrayType "int8range[]" "int8range" Source # 

Methods

pgArrayElementType :: PGTypeName "int8range[]" -> PGTypeName "int8range" Source #

pgArrayDelim :: PGTypeName "int8range[]" -> Char Source #

PGType "integer" => PGArrayType "integer[]" "integer" Source # 

Methods

pgArrayElementType :: PGTypeName "integer[]" -> PGTypeName "integer" Source #

pgArrayDelim :: PGTypeName "integer[]" -> Char Source #

PGType "interval" => PGArrayType "interval[]" "interval" Source # 

Methods

pgArrayElementType :: PGTypeName "interval[]" -> PGTypeName "interval" Source #

pgArrayDelim :: PGTypeName "interval[]" -> Char Source #

PGType "json" => PGArrayType "json[]" "json" Source # 

Methods

pgArrayElementType :: PGTypeName "json[]" -> PGTypeName "json" Source #

pgArrayDelim :: PGTypeName "json[]" -> Char Source #

PGType "line" => PGArrayType "line[]" "line" Source # 

Methods

pgArrayElementType :: PGTypeName "line[]" -> PGTypeName "line" Source #

pgArrayDelim :: PGTypeName "line[]" -> Char Source #

PGType "lseg" => PGArrayType "lseg[]" "lseg" Source # 

Methods

pgArrayElementType :: PGTypeName "lseg[]" -> PGTypeName "lseg" Source #

pgArrayDelim :: PGTypeName "lseg[]" -> Char Source #

PGType "macaddr" => PGArrayType "macaddr[]" "macaddr" Source # 

Methods

pgArrayElementType :: PGTypeName "macaddr[]" -> PGTypeName "macaddr" Source #

pgArrayDelim :: PGTypeName "macaddr[]" -> Char Source #

PGType "money" => PGArrayType "money[]" "money" Source # 

Methods

pgArrayElementType :: PGTypeName "money[]" -> PGTypeName "money" Source #

pgArrayDelim :: PGTypeName "money[]" -> Char Source #

PGType "name" => PGArrayType "name[]" "name" Source # 

Methods

pgArrayElementType :: PGTypeName "name[]" -> PGTypeName "name" Source #

pgArrayDelim :: PGTypeName "name[]" -> Char Source #

PGType "numeric" => PGArrayType "numeric[]" "numeric" Source # 

Methods

pgArrayElementType :: PGTypeName "numeric[]" -> PGTypeName "numeric" Source #

pgArrayDelim :: PGTypeName "numeric[]" -> Char Source #

PGType "numrange" => PGArrayType "numrange[]" "numrange" Source # 

Methods

pgArrayElementType :: PGTypeName "numrange[]" -> PGTypeName "numrange" Source #

pgArrayDelim :: PGTypeName "numrange[]" -> Char Source #

PGType "oid" => PGArrayType "oid[]" "oid" Source # 
PGType "oidvector" => PGArrayType "oidvector[]" "oidvector" Source # 

Methods

pgArrayElementType :: PGTypeName "oidvector[]" -> PGTypeName "oidvector" Source #

pgArrayDelim :: PGTypeName "oidvector[]" -> Char Source #

PGType "path" => PGArrayType "path[]" "path" Source # 

Methods

pgArrayElementType :: PGTypeName "path[]" -> PGTypeName "path" Source #

pgArrayDelim :: PGTypeName "path[]" -> Char Source #

PGType "point" => PGArrayType "point[]" "point" Source # 

Methods

pgArrayElementType :: PGTypeName "point[]" -> PGTypeName "point" Source #

pgArrayDelim :: PGTypeName "point[]" -> Char Source #

PGType "polygon" => PGArrayType "polygon[]" "polygon" Source # 

Methods

pgArrayElementType :: PGTypeName "polygon[]" -> PGTypeName "polygon" Source #

pgArrayDelim :: PGTypeName "polygon[]" -> Char Source #

PGType "real" => PGArrayType "real[]" "real" Source # 

Methods

pgArrayElementType :: PGTypeName "real[]" -> PGTypeName "real" Source #

pgArrayDelim :: PGTypeName "real[]" -> Char Source #

PGType "record" => PGArrayType "record[]" "record" Source # 

Methods

pgArrayElementType :: PGTypeName "record[]" -> PGTypeName "record" Source #

pgArrayDelim :: PGTypeName "record[]" -> Char Source #

PGType "refcursor" => PGArrayType "refcursor[]" "refcursor" Source # 

Methods

pgArrayElementType :: PGTypeName "refcursor[]" -> PGTypeName "refcursor" Source #

pgArrayDelim :: PGTypeName "refcursor[]" -> Char Source #

PGType "regclass" => PGArrayType "regclass[]" "regclass" Source # 

Methods

pgArrayElementType :: PGTypeName "regclass[]" -> PGTypeName "regclass" Source #

pgArrayDelim :: PGTypeName "regclass[]" -> Char Source #

PGType "regconfig" => PGArrayType "regconfig[]" "regconfig" Source # 

Methods

pgArrayElementType :: PGTypeName "regconfig[]" -> PGTypeName "regconfig" Source #

pgArrayDelim :: PGTypeName "regconfig[]" -> Char Source #

PGType "regdictionary" => PGArrayType "regdictionary[]" "regdictionary" Source # 

Methods

pgArrayElementType :: PGTypeName "regdictionary[]" -> PGTypeName "regdictionary" Source #

pgArrayDelim :: PGTypeName "regdictionary[]" -> Char Source #

PGType "regoper" => PGArrayType "regoper[]" "regoper" Source # 

Methods

pgArrayElementType :: PGTypeName "regoper[]" -> PGTypeName "regoper" Source #

pgArrayDelim :: PGTypeName "regoper[]" -> Char Source #

PGType "regoperator" => PGArrayType "regoperator[]" "regoperator" Source # 

Methods

pgArrayElementType :: PGTypeName "regoperator[]" -> PGTypeName "regoperator" Source #

pgArrayDelim :: PGTypeName "regoperator[]" -> Char Source #

PGType "regproc" => PGArrayType "regproc[]" "regproc" Source # 

Methods

pgArrayElementType :: PGTypeName "regproc[]" -> PGTypeName "regproc" Source #

pgArrayDelim :: PGTypeName "regproc[]" -> Char Source #

PGType "regprocedure" => PGArrayType "regprocedure[]" "regprocedure" Source # 

Methods

pgArrayElementType :: PGTypeName "regprocedure[]" -> PGTypeName "regprocedure" Source #

pgArrayDelim :: PGTypeName "regprocedure[]" -> Char Source #

PGType "regtype" => PGArrayType "regtype[]" "regtype" Source # 

Methods

pgArrayElementType :: PGTypeName "regtype[]" -> PGTypeName "regtype" Source #

pgArrayDelim :: PGTypeName "regtype[]" -> Char Source #

PGType "reltime" => PGArrayType "reltime[]" "reltime" Source # 

Methods

pgArrayElementType :: PGTypeName "reltime[]" -> PGTypeName "reltime" Source #

pgArrayDelim :: PGTypeName "reltime[]" -> Char Source #

PGType "smallint" => PGArrayType "smallint[]" "smallint" Source # 

Methods

pgArrayElementType :: PGTypeName "smallint[]" -> PGTypeName "smallint" Source #

pgArrayDelim :: PGTypeName "smallint[]" -> Char Source #

PGType "text" => PGArrayType "text[]" "text" Source # 

Methods

pgArrayElementType :: PGTypeName "text[]" -> PGTypeName "text" Source #

pgArrayDelim :: PGTypeName "text[]" -> Char Source #

PGType "tid" => PGArrayType "tid[]" "tid" Source # 
PGType "time with time zone" => PGArrayType "time with time zone[]" "time with time zone" Source # 

Methods

pgArrayElementType :: PGTypeName "time with time zone[]" -> PGTypeName "time with time zone" Source #

pgArrayDelim :: PGTypeName "time with time zone[]" -> Char Source #

PGType "time without time zone" => PGArrayType "time without time zone[]" "time without time zone" Source # 

Methods

pgArrayElementType :: PGTypeName "time without time zone[]" -> PGTypeName "time without time zone" Source #

pgArrayDelim :: PGTypeName "time without time zone[]" -> Char Source #

PGType "timestamp with time zone" => PGArrayType "timestamp with time zone[]" "timestamp with time zone" Source # 

Methods

pgArrayElementType :: PGTypeName "timestamp with time zone[]" -> PGTypeName "timestamp with time zone" Source #

pgArrayDelim :: PGTypeName "timestamp with time zone[]" -> Char Source #

PGType "timestamp without time zone" => PGArrayType "timestamp without time zone[]" "timestamp without time zone" Source # 

Methods

pgArrayElementType :: PGTypeName "timestamp without time zone[]" -> PGTypeName "timestamp without time zone" Source #

pgArrayDelim :: PGTypeName "timestamp without time zone[]" -> Char Source #

PGType "tinterval" => PGArrayType "tinterval[]" "tinterval" Source # 

Methods

pgArrayElementType :: PGTypeName "tinterval[]" -> PGTypeName "tinterval" Source #

pgArrayDelim :: PGTypeName "tinterval[]" -> Char Source #

PGType "tsquery" => PGArrayType "tsquery[]" "tsquery" Source # 

Methods

pgArrayElementType :: PGTypeName "tsquery[]" -> PGTypeName "tsquery" Source #

pgArrayDelim :: PGTypeName "tsquery[]" -> Char Source #

PGType "tsrange" => PGArrayType "tsrange[]" "tsrange" Source # 

Methods

pgArrayElementType :: PGTypeName "tsrange[]" -> PGTypeName "tsrange" Source #

pgArrayDelim :: PGTypeName "tsrange[]" -> Char Source #

PGType "tstzrange" => PGArrayType "tstzrange[]" "tstzrange" Source # 

Methods

pgArrayElementType :: PGTypeName "tstzrange[]" -> PGTypeName "tstzrange" Source #

pgArrayDelim :: PGTypeName "tstzrange[]" -> Char Source #

PGType "tsvector" => PGArrayType "tsvector[]" "tsvector" Source # 

Methods

pgArrayElementType :: PGTypeName "tsvector[]" -> PGTypeName "tsvector" Source #

pgArrayDelim :: PGTypeName "tsvector[]" -> Char Source #

PGType "txid_snapshot" => PGArrayType "txid_snapshot[]" "txid_snapshot" Source # 

Methods

pgArrayElementType :: PGTypeName "txid_snapshot[]" -> PGTypeName "txid_snapshot" Source #

pgArrayDelim :: PGTypeName "txid_snapshot[]" -> Char Source #

PGType "uuid" => PGArrayType "uuid[]" "uuid" Source # 

Methods

pgArrayElementType :: PGTypeName "uuid[]" -> PGTypeName "uuid" Source #

pgArrayDelim :: PGTypeName "uuid[]" -> Char Source #

PGType "varbit" => PGArrayType "varbit[]" "varbit" Source # 

Methods

pgArrayElementType :: PGTypeName "varbit[]" -> PGTypeName "varbit" Source #

pgArrayDelim :: PGTypeName "varbit[]" -> Char Source #

PGType "xid" => PGArrayType "xid[]" "xid" Source # 
PGType "xml" => PGArrayType "xml[]" "xml" Source # 

Orphan instances

PGType "\"char\"" => PGType "\"char\"[]" Source # 

Methods

pgTypeName :: PGTypeName "\"char\"[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "\"char\"[]" -> Bool Source #

PGType "abstime" => PGType "abstime[]" Source # 

Methods

pgTypeName :: PGTypeName "abstime[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "abstime[]" -> Bool Source #

PGType "aclitem" => PGType "aclitem[]" Source # 

Methods

pgTypeName :: PGTypeName "aclitem[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "aclitem[]" -> Bool Source #

PGType "bigint" => PGType "bigint[]" Source # 

Methods

pgTypeName :: PGTypeName "bigint[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "bigint[]" -> Bool Source #

PGType "bit" => PGType "bit[]" Source # 
PGType "boolean" => PGType "boolean[]" Source # 

Methods

pgTypeName :: PGTypeName "boolean[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "boolean[]" -> Bool Source #

PGType "box" => PGType "box[]" Source # 
PGType "bpchar" => PGType "bpchar[]" Source # 

Methods

pgTypeName :: PGTypeName "bpchar[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "bpchar[]" -> Bool Source #

PGType "bytea" => PGType "bytea[]" Source # 
PGType "character varying" => PGType "character varying[]" Source # 

Methods

pgTypeName :: PGTypeName "character varying[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "character varying[]" -> Bool Source #

PGType "cid" => PGType "cid[]" Source # 
PGType "cidr" => PGType "cidr[]" Source # 
PGType "circle" => PGType "circle[]" Source # 

Methods

pgTypeName :: PGTypeName "circle[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "circle[]" -> Bool Source #

PGType "cstring" => PGType "cstring[]" Source # 

Methods

pgTypeName :: PGTypeName "cstring[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "cstring[]" -> Bool Source #

PGType "date" => PGType "date[]" Source # 
PGType "daterange" => PGType "daterange[]" Source # 

Methods

pgTypeName :: PGTypeName "daterange[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "daterange[]" -> Bool Source #

PGType "double precision" => PGType "double precision[]" Source # 

Methods

pgTypeName :: PGTypeName "double precision[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "double precision[]" -> Bool Source #

PGType "gtsvector" => PGType "gtsvector[]" Source # 

Methods

pgTypeName :: PGTypeName "gtsvector[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "gtsvector[]" -> Bool Source #

PGType "inet" => PGType "inet[]" Source # 
PGType "int2vector" => PGType "int2vector[]" Source # 

Methods

pgTypeName :: PGTypeName "int2vector[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "int2vector[]" -> Bool Source #

PGType "int4range" => PGType "int4range[]" Source # 

Methods

pgTypeName :: PGTypeName "int4range[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "int4range[]" -> Bool Source #

PGType "int8range" => PGType "int8range[]" Source # 

Methods

pgTypeName :: PGTypeName "int8range[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "int8range[]" -> Bool Source #

PGType "integer" => PGType "integer[]" Source # 

Methods

pgTypeName :: PGTypeName "integer[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "integer[]" -> Bool Source #

PGType "interval" => PGType "interval[]" Source # 

Methods

pgTypeName :: PGTypeName "interval[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "interval[]" -> Bool Source #

PGType "json" => PGType "json[]" Source # 
PGType "line" => PGType "line[]" Source # 
PGType "lseg" => PGType "lseg[]" Source # 
PGType "macaddr" => PGType "macaddr[]" Source # 

Methods

pgTypeName :: PGTypeName "macaddr[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "macaddr[]" -> Bool Source #

PGType "money" => PGType "money[]" Source # 
PGType "name" => PGType "name[]" Source # 
PGType "numeric" => PGType "numeric[]" Source # 

Methods

pgTypeName :: PGTypeName "numeric[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "numeric[]" -> Bool Source #

PGType "numrange" => PGType "numrange[]" Source # 

Methods

pgTypeName :: PGTypeName "numrange[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "numrange[]" -> Bool Source #

PGType "oid" => PGType "oid[]" Source # 
PGType "oidvector" => PGType "oidvector[]" Source # 

Methods

pgTypeName :: PGTypeName "oidvector[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "oidvector[]" -> Bool Source #

PGType "path" => PGType "path[]" Source # 
PGType "point" => PGType "point[]" Source # 
PGType "polygon" => PGType "polygon[]" Source # 

Methods

pgTypeName :: PGTypeName "polygon[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "polygon[]" -> Bool Source #

PGType "real" => PGType "real[]" Source # 
PGType "record" => PGType "record[]" Source # 

Methods

pgTypeName :: PGTypeName "record[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "record[]" -> Bool Source #

PGType "refcursor" => PGType "refcursor[]" Source # 

Methods

pgTypeName :: PGTypeName "refcursor[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "refcursor[]" -> Bool Source #

PGType "regclass" => PGType "regclass[]" Source # 

Methods

pgTypeName :: PGTypeName "regclass[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "regclass[]" -> Bool Source #

PGType "regconfig" => PGType "regconfig[]" Source # 

Methods

pgTypeName :: PGTypeName "regconfig[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "regconfig[]" -> Bool Source #

PGType "regdictionary" => PGType "regdictionary[]" Source # 

Methods

pgTypeName :: PGTypeName "regdictionary[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "regdictionary[]" -> Bool Source #

PGType "regoper" => PGType "regoper[]" Source # 

Methods

pgTypeName :: PGTypeName "regoper[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "regoper[]" -> Bool Source #

PGType "regoperator" => PGType "regoperator[]" Source # 

Methods

pgTypeName :: PGTypeName "regoperator[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "regoperator[]" -> Bool Source #

PGType "regproc" => PGType "regproc[]" Source # 

Methods

pgTypeName :: PGTypeName "regproc[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "regproc[]" -> Bool Source #

PGType "regprocedure" => PGType "regprocedure[]" Source # 

Methods

pgTypeName :: PGTypeName "regprocedure[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "regprocedure[]" -> Bool Source #

PGType "regtype" => PGType "regtype[]" Source # 

Methods

pgTypeName :: PGTypeName "regtype[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "regtype[]" -> Bool Source #

PGType "reltime" => PGType "reltime[]" Source # 

Methods

pgTypeName :: PGTypeName "reltime[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "reltime[]" -> Bool Source #

PGType "smallint" => PGType "smallint[]" Source # 

Methods

pgTypeName :: PGTypeName "smallint[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "smallint[]" -> Bool Source #

PGType "text" => PGType "text[]" Source # 
PGType "tid" => PGType "tid[]" Source # 
PGType "time with time zone" => PGType "time with time zone[]" Source # 

Methods

pgTypeName :: PGTypeName "time with time zone[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "time with time zone[]" -> Bool Source #

PGType "time without time zone" => PGType "time without time zone[]" Source # 

Methods

pgTypeName :: PGTypeName "time without time zone[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "time without time zone[]" -> Bool Source #

PGType "timestamp with time zone" => PGType "timestamp with time zone[]" Source # 

Methods

pgTypeName :: PGTypeName "timestamp with time zone[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "timestamp with time zone[]" -> Bool Source #

PGType "timestamp without time zone" => PGType "timestamp without time zone[]" Source # 

Methods

pgTypeName :: PGTypeName "timestamp without time zone[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "timestamp without time zone[]" -> Bool Source #

PGType "tinterval" => PGType "tinterval[]" Source # 

Methods

pgTypeName :: PGTypeName "tinterval[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "tinterval[]" -> Bool Source #

PGType "tsquery" => PGType "tsquery[]" Source # 

Methods

pgTypeName :: PGTypeName "tsquery[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "tsquery[]" -> Bool Source #

PGType "tsrange" => PGType "tsrange[]" Source # 

Methods

pgTypeName :: PGTypeName "tsrange[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "tsrange[]" -> Bool Source #

PGType "tstzrange" => PGType "tstzrange[]" Source # 

Methods

pgTypeName :: PGTypeName "tstzrange[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "tstzrange[]" -> Bool Source #

PGType "tsvector" => PGType "tsvector[]" Source # 

Methods

pgTypeName :: PGTypeName "tsvector[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "tsvector[]" -> Bool Source #

PGType "txid_snapshot" => PGType "txid_snapshot[]" Source # 

Methods

pgTypeName :: PGTypeName "txid_snapshot[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "txid_snapshot[]" -> Bool Source #

PGType "uuid" => PGType "uuid[]" Source # 
PGType "varbit" => PGType "varbit[]" Source # 

Methods

pgTypeName :: PGTypeName "varbit[]" -> String Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeName "varbit[]" -> Bool Source #

PGType "xid" => PGType "xid[]" Source # 
PGType "xml" => PGType "xml[]" Source # 
(PGArrayType ta t, PGColumn t a) => PGColumn ta (PGArray a) Source # 

Methods

pgDecode :: PGTypeName ta -> PGTextValue -> PGArray a Source #

pgDecodeBinary :: PGTypeEnv -> PGTypeName ta -> PGBinaryValue -> PGArray a Source #

pgDecodeValue :: PGTypeEnv -> PGTypeName ta -> PGValue -> PGArray a Source #

(PGArrayType ta t, PGParameter t a) => PGParameter ta [a] Source #

Allow entirely non-null arrays as parameter inputs only. (Only supported on ghc >= 7.10 due to instance overlap.)

Methods

pgEncode :: PGTypeName ta -> [a] -> PGTextValue Source #

pgLiteral :: PGTypeName ta -> [a] -> ByteString Source #

pgEncodeValue :: PGTypeEnv -> PGTypeName ta -> [a] -> PGValue Source #

(PGArrayType ta t, PGParameter t a) => PGParameter ta (PGArray a) Source #