-- Hoogle documentation, generated by Haddock -- See Hoogle, http://www.haskell.org/hoogle/ -- | A "PostgreSQL" backend for the "hasql" library -- -- This library provides a "PostgreSQL" driver for the "hasql" -- library. -- -- It supports all Postgres versions starting from 8.3 and is tested -- against 8.3, 9.3 and 9.4 with the integer_datetimes setting -- off and on. -- -- According to the included benchmarks, it performs up to 2x faster than -- "postgresql-simple" and up to 7x faster than "HDBC". You can read up -- a post with analysis of those benchmarks. @package hasql-postgres @version 0.9.0 -- | This module contains everything required to use "hasql" with Postgres. -- For information on how it should be used consult the "hasql" docs. -- -- Please note that there is a few limitations inflicted by Postgres, -- encoding which in the type system would seriously burden the API, so -- it was decided to make it the user's responsibility to make sure that -- certain conditions are satisfied during the runtime. Particularly this -- concerns the Mapping instances of Maybe, [] -- and Vector. For details consult the docs on those instances. module Hasql.Postgres -- | Just an alias to settings, which is used as a more descriptive -- identifier type of the backend. type Postgres = Settings -- | Connection settings. data Settings -- | A host, a port, a user, a password and a database. ParamSettings :: ByteString -> Word16 -> ByteString -> ByteString -> ByteString -> Settings -- | All settings encoded in a single byte string according to the -- PostgreSQL format. StringSettings :: ByteString -> Settings instance Mapping Postgres UUID instance Mapping Postgres Bool instance Mapping Postgres LazyByteString instance Mapping Postgres ByteString instance Mapping Postgres LazyText instance Mapping Postgres Text instance Mapping Postgres Char instance Mapping Postgres DiffTime instance Mapping Postgres UTCTime instance Mapping Postgres LocalTime instance Mapping Postgres (TimeOfDay, TimeZone) instance Mapping Postgres TimeOfDay instance Mapping Postgres Day instance Mapping Postgres Scientific instance Mapping Postgres Double instance Mapping Postgres Float instance Mapping Postgres Word64 instance Mapping Postgres Word32 instance Mapping Postgres Word16 instance Mapping Postgres Word8 instance Mapping Postgres Word instance Mapping Postgres Int64 instance Mapping Postgres Int32 instance Mapping Postgres Int16 instance Mapping Postgres Int8 instance Mapping Postgres Int instance (Mapping a, ArrayMapping a) => Mapping Postgres (Vector a) instance (Mapping a, ArrayMapping a) => Mapping Postgres [a] instance Mapping a => Mapping Postgres (Maybe a) instance Backend Postgres