pqi

pqi

pqi reproduces the API surface of the postgresql-libpq package, but reifies the connection (and its results) as a plain record of closures instead of a single concrete type tied to libpq. This lets callers program against one interface and pick an adapter package to construct it:

  • pqi-ffi - a thin adapter backed by the C libpq library via postgresql-libpq.
  • pqi-native - a pure-Haskell adapter that speaks the PostgreSQL wire protocol directly. Alpha, and fully interchangeable with pqi-ffi: switching between them is a one-line Adapter change.

This package ships only the interface: the record types, and an Adapter type for adapter packages to bundle their connection-establishing functions under.

Modules

pqi-1.1.0.1