postgresql-typed-0.5.2: PostgreSQL interface with compile-time SQL type checking, 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 t, PGType (PGElemType t)) => PGArrayType t 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.

Associated Types

type PGElemType t :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID t -> PGTypeID (PGElemType t) Source #

pgArrayDelim :: PGTypeID t -> Char Source #

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

Instances

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

Associated Types

type PGElemType ("\"char\"[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "\"char\"[]" -> PGTypeID (PGElemType "\"char\"[]") Source #

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

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

Associated Types

type PGElemType ("abstime[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "abstime[]" -> PGTypeID (PGElemType "abstime[]") Source #

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

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

Associated Types

type PGElemType ("aclitem[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "aclitem[]" -> PGTypeID (PGElemType "aclitem[]") Source #

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

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

Associated Types

type PGElemType ("bigint[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "bigint[]" -> PGTypeID (PGElemType "bigint[]") Source #

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

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

Associated Types

type PGElemType ("bit[]" :: Symbol) :: Symbol Source #

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

Associated Types

type PGElemType ("boolean[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "boolean[]" -> PGTypeID (PGElemType "boolean[]") Source #

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

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

Associated Types

type PGElemType ("box[]" :: Symbol) :: Symbol Source #

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

Associated Types

type PGElemType ("bpchar[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "bpchar[]" -> PGTypeID (PGElemType "bpchar[]") Source #

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

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

Associated Types

type PGElemType ("bytea[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "bytea[]" -> PGTypeID (PGElemType "bytea[]") Source #

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

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

Associated Types

type PGElemType ("character varying[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "character varying[]" -> PGTypeID (PGElemType "character varying[]") Source #

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

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

Associated Types

type PGElemType ("cid[]" :: Symbol) :: Symbol Source #

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

Associated Types

type PGElemType ("cidr[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "cidr[]" -> PGTypeID (PGElemType "cidr[]") Source #

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

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

Associated Types

type PGElemType ("circle[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "circle[]" -> PGTypeID (PGElemType "circle[]") Source #

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

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

Associated Types

type PGElemType ("cstring[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "cstring[]" -> PGTypeID (PGElemType "cstring[]") Source #

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

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

Associated Types

type PGElemType ("date[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "date[]" -> PGTypeID (PGElemType "date[]") Source #

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

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

Associated Types

type PGElemType ("daterange[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "daterange[]" -> PGTypeID (PGElemType "daterange[]") Source #

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

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

Associated Types

type PGElemType ("double precision[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "double precision[]" -> PGTypeID (PGElemType "double precision[]") Source #

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

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

Associated Types

type PGElemType ("gtsvector[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "gtsvector[]" -> PGTypeID (PGElemType "gtsvector[]") Source #

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

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

Associated Types

type PGElemType ("inet[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "inet[]" -> PGTypeID (PGElemType "inet[]") Source #

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

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

Associated Types

type PGElemType ("int2vector[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "int2vector[]" -> PGTypeID (PGElemType "int2vector[]") Source #

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

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

Associated Types

type PGElemType ("int4range[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "int4range[]" -> PGTypeID (PGElemType "int4range[]") Source #

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

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

Associated Types

type PGElemType ("int8range[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "int8range[]" -> PGTypeID (PGElemType "int8range[]") Source #

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

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

Associated Types

type PGElemType ("integer[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "integer[]" -> PGTypeID (PGElemType "integer[]") Source #

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

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

Associated Types

type PGElemType ("interval[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "interval[]" -> PGTypeID (PGElemType "interval[]") Source #

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

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

Associated Types

type PGElemType ("json[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "json[]" -> PGTypeID (PGElemType "json[]") Source #

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

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

Associated Types

type PGElemType ("line[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "line[]" -> PGTypeID (PGElemType "line[]") Source #

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

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

Associated Types

type PGElemType ("lseg[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "lseg[]" -> PGTypeID (PGElemType "lseg[]") Source #

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

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

Associated Types

type PGElemType ("macaddr[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "macaddr[]" -> PGTypeID (PGElemType "macaddr[]") Source #

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

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

Associated Types

type PGElemType ("money[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "money[]" -> PGTypeID (PGElemType "money[]") Source #

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

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

Associated Types

type PGElemType ("name[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "name[]" -> PGTypeID (PGElemType "name[]") Source #

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

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

Associated Types

type PGElemType ("numeric[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "numeric[]" -> PGTypeID (PGElemType "numeric[]") Source #

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

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

Associated Types

type PGElemType ("numrange[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "numrange[]" -> PGTypeID (PGElemType "numrange[]") Source #

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

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

Associated Types

type PGElemType ("oid[]" :: Symbol) :: Symbol Source #

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

Associated Types

type PGElemType ("oidvector[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "oidvector[]" -> PGTypeID (PGElemType "oidvector[]") Source #

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

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

Associated Types

type PGElemType ("path[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "path[]" -> PGTypeID (PGElemType "path[]") Source #

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

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

Associated Types

type PGElemType ("point[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "point[]" -> PGTypeID (PGElemType "point[]") Source #

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

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

Associated Types

type PGElemType ("polygon[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "polygon[]" -> PGTypeID (PGElemType "polygon[]") Source #

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

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

Associated Types

type PGElemType ("real[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "real[]" -> PGTypeID (PGElemType "real[]") Source #

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

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

Associated Types

type PGElemType ("record[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "record[]" -> PGTypeID (PGElemType "record[]") Source #

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

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

Associated Types

type PGElemType ("refcursor[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "refcursor[]" -> PGTypeID (PGElemType "refcursor[]") Source #

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

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

Associated Types

type PGElemType ("regclass[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "regclass[]" -> PGTypeID (PGElemType "regclass[]") Source #

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

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

Associated Types

type PGElemType ("regconfig[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "regconfig[]" -> PGTypeID (PGElemType "regconfig[]") Source #

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

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

Associated Types

type PGElemType ("regdictionary[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "regdictionary[]" -> PGTypeID (PGElemType "regdictionary[]") Source #

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

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

Associated Types

type PGElemType ("regoper[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "regoper[]" -> PGTypeID (PGElemType "regoper[]") Source #

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

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

Associated Types

type PGElemType ("regoperator[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "regoperator[]" -> PGTypeID (PGElemType "regoperator[]") Source #

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

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

Associated Types

type PGElemType ("regproc[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "regproc[]" -> PGTypeID (PGElemType "regproc[]") Source #

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

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

Associated Types

type PGElemType ("regprocedure[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "regprocedure[]" -> PGTypeID (PGElemType "regprocedure[]") Source #

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

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

Associated Types

type PGElemType ("regtype[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "regtype[]" -> PGTypeID (PGElemType "regtype[]") Source #

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

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

Associated Types

type PGElemType ("reltime[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "reltime[]" -> PGTypeID (PGElemType "reltime[]") Source #

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

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

Associated Types

type PGElemType ("smallint[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "smallint[]" -> PGTypeID (PGElemType "smallint[]") Source #

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

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

Associated Types

type PGElemType ("text[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "text[]" -> PGTypeID (PGElemType "text[]") Source #

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

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

Associated Types

type PGElemType ("tid[]" :: Symbol) :: Symbol Source #

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

Associated Types

type PGElemType ("time with time zone[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "time with time zone[]" -> PGTypeID (PGElemType "time with time zone[]") Source #

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

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

Associated Types

type PGElemType ("time without time zone[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "time without time zone[]" -> PGTypeID (PGElemType "time without time zone[]") Source #

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

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

Associated Types

type PGElemType ("timestamp with time zone[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "timestamp with time zone[]" -> PGTypeID (PGElemType "timestamp with time zone[]") Source #

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

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

Associated Types

type PGElemType ("timestamp without time zone[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "timestamp without time zone[]" -> PGTypeID (PGElemType "timestamp without time zone[]") Source #

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

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

Associated Types

type PGElemType ("tinterval[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "tinterval[]" -> PGTypeID (PGElemType "tinterval[]") Source #

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

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

Associated Types

type PGElemType ("tsquery[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "tsquery[]" -> PGTypeID (PGElemType "tsquery[]") Source #

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

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

Associated Types

type PGElemType ("tsrange[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "tsrange[]" -> PGTypeID (PGElemType "tsrange[]") Source #

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

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

Associated Types

type PGElemType ("tstzrange[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "tstzrange[]" -> PGTypeID (PGElemType "tstzrange[]") Source #

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

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

Associated Types

type PGElemType ("tsvector[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "tsvector[]" -> PGTypeID (PGElemType "tsvector[]") Source #

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

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

Associated Types

type PGElemType ("txid_snapshot[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "txid_snapshot[]" -> PGTypeID (PGElemType "txid_snapshot[]") Source #

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

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

Associated Types

type PGElemType ("uuid[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "uuid[]" -> PGTypeID (PGElemType "uuid[]") Source #

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

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

Associated Types

type PGElemType ("varbit[]" :: Symbol) :: Symbol Source #

Methods

pgArrayElementType :: PGTypeID "varbit[]" -> PGTypeID (PGElemType "varbit[]") Source #

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

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

Associated Types

type PGElemType ("xid[]" :: Symbol) :: Symbol Source #

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

Associated Types

type PGElemType ("xml[]" :: Symbol) :: Symbol Source #

Orphan instances

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

Associated Types

type PGVal ("\"char\"[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "\"char\"[]" -> PGName Source #

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

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

Associated Types

type PGVal ("abstime[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "abstime[]" -> PGName Source #

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

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

Associated Types

type PGVal ("aclitem[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "aclitem[]" -> PGName Source #

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

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

Associated Types

type PGVal ("bigint[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "bigint[]" -> PGName Source #

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

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

Associated Types

type PGVal ("bit[]" :: Symbol) :: * Source #

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

Associated Types

type PGVal ("boolean[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "boolean[]" -> PGName Source #

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

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

Associated Types

type PGVal ("box[]" :: Symbol) :: * Source #

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

Associated Types

type PGVal ("bpchar[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "bpchar[]" -> PGName Source #

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

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

Associated Types

type PGVal ("bytea[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "bytea[]" -> PGName Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeID "bytea[]" -> Bool Source #

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

Associated Types

type PGVal ("character varying[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "character varying[]" -> PGName Source #

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

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

Associated Types

type PGVal ("cid[]" :: Symbol) :: * Source #

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

Associated Types

type PGVal ("cidr[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "cidr[]" -> PGName Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeID "cidr[]" -> Bool Source #

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

Associated Types

type PGVal ("circle[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "circle[]" -> PGName Source #

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

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

Associated Types

type PGVal ("cstring[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "cstring[]" -> PGName Source #

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

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

Associated Types

type PGVal ("date[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "date[]" -> PGName Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeID "date[]" -> Bool Source #

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

Associated Types

type PGVal ("daterange[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "daterange[]" -> PGName Source #

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

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

Associated Types

type PGVal ("double precision[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "double precision[]" -> PGName Source #

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

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

Associated Types

type PGVal ("gtsvector[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "gtsvector[]" -> PGName Source #

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

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

Associated Types

type PGVal ("inet[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "inet[]" -> PGName Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeID "inet[]" -> Bool Source #

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

Associated Types

type PGVal ("int2vector[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "int2vector[]" -> PGName Source #

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

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

Associated Types

type PGVal ("int4range[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "int4range[]" -> PGName Source #

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

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

Associated Types

type PGVal ("int8range[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "int8range[]" -> PGName Source #

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

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

Associated Types

type PGVal ("integer[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "integer[]" -> PGName Source #

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

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

Associated Types

type PGVal ("interval[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "interval[]" -> PGName Source #

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

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

Associated Types

type PGVal ("json[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "json[]" -> PGName Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeID "json[]" -> Bool Source #

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

Associated Types

type PGVal ("line[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "line[]" -> PGName Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeID "line[]" -> Bool Source #

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

Associated Types

type PGVal ("lseg[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "lseg[]" -> PGName Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeID "lseg[]" -> Bool Source #

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

Associated Types

type PGVal ("macaddr[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "macaddr[]" -> PGName Source #

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

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

Associated Types

type PGVal ("money[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "money[]" -> PGName Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeID "money[]" -> Bool Source #

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

Associated Types

type PGVal ("name[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "name[]" -> PGName Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeID "name[]" -> Bool Source #

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

Associated Types

type PGVal ("numeric[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "numeric[]" -> PGName Source #

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

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

Associated Types

type PGVal ("numrange[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "numrange[]" -> PGName Source #

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

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

Associated Types

type PGVal ("oid[]" :: Symbol) :: * Source #

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

Associated Types

type PGVal ("oidvector[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "oidvector[]" -> PGName Source #

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

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

Associated Types

type PGVal ("path[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "path[]" -> PGName Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeID "path[]" -> Bool Source #

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

Associated Types

type PGVal ("point[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "point[]" -> PGName Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeID "point[]" -> Bool Source #

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

Associated Types

type PGVal ("polygon[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "polygon[]" -> PGName Source #

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

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

Associated Types

type PGVal ("real[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "real[]" -> PGName Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeID "real[]" -> Bool Source #

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

Associated Types

type PGVal ("record[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "record[]" -> PGName Source #

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

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

Associated Types

type PGVal ("refcursor[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "refcursor[]" -> PGName Source #

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

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

Associated Types

type PGVal ("regclass[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "regclass[]" -> PGName Source #

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

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

Associated Types

type PGVal ("regconfig[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "regconfig[]" -> PGName Source #

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

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

Associated Types

type PGVal ("regdictionary[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "regdictionary[]" -> PGName Source #

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

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

Associated Types

type PGVal ("regoper[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "regoper[]" -> PGName Source #

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

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

Associated Types

type PGVal ("regoperator[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "regoperator[]" -> PGName Source #

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

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

Associated Types

type PGVal ("regproc[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "regproc[]" -> PGName Source #

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

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

Associated Types

type PGVal ("regprocedure[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "regprocedure[]" -> PGName Source #

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

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

Associated Types

type PGVal ("regtype[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "regtype[]" -> PGName Source #

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

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

Associated Types

type PGVal ("reltime[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "reltime[]" -> PGName Source #

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

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

Associated Types

type PGVal ("smallint[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "smallint[]" -> PGName Source #

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

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

Associated Types

type PGVal ("text[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "text[]" -> PGName Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeID "text[]" -> Bool Source #

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

Associated Types

type PGVal ("tid[]" :: Symbol) :: * Source #

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

Associated Types

type PGVal ("time with time zone[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "time with time zone[]" -> PGName Source #

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

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

Associated Types

type PGVal ("time without time zone[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "time without time zone[]" -> PGName Source #

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

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

Associated Types

type PGVal ("timestamp with time zone[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "timestamp with time zone[]" -> PGName Source #

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

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

Associated Types

type PGVal ("timestamp without time zone[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "timestamp without time zone[]" -> PGName Source #

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

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

Associated Types

type PGVal ("tinterval[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "tinterval[]" -> PGName Source #

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

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

Associated Types

type PGVal ("tsquery[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "tsquery[]" -> PGName Source #

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

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

Associated Types

type PGVal ("tsrange[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "tsrange[]" -> PGName Source #

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

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

Associated Types

type PGVal ("tstzrange[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "tstzrange[]" -> PGName Source #

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

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

Associated Types

type PGVal ("tsvector[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "tsvector[]" -> PGName Source #

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

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

Associated Types

type PGVal ("txid_snapshot[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "txid_snapshot[]" -> PGName Source #

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

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

Associated Types

type PGVal ("uuid[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "uuid[]" -> PGName Source #

pgBinaryColumn :: PGTypeEnv -> PGTypeID "uuid[]" -> Bool Source #

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

Associated Types

type PGVal ("varbit[]" :: Symbol) :: * Source #

Methods

pgTypeName :: PGTypeID "varbit[]" -> PGName Source #

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

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

Associated Types

type PGVal ("xid[]" :: Symbol) :: * Source #

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

Associated Types

type PGVal ("xml[]" :: Symbol) :: * Source #

(PGArrayType t, PGColumn (PGElemType t) a) => PGColumn t (PGArray a) Source # 

Methods

pgDecode :: PGTypeID t -> PGTextValue -> PGArray a Source #

pgDecodeBinary :: PGTypeEnv -> PGTypeID t -> PGBinaryValue -> PGArray a Source #

pgDecodeValue :: PGTypeEnv -> PGTypeID t -> PGValue -> PGArray a Source #

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

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

Methods

pgEncode :: PGTypeID t -> [a] -> PGTextValue Source #

pgLiteral :: PGTypeID t -> [a] -> ByteString Source #

pgEncodeValue :: PGTypeEnv -> PGTypeID t -> [a] -> PGValue Source #

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