@@ -38,6 +38,8 @@ import Data.Pool
38import Data.Time
38import Data.Time
39import Generics.SOP (K(..))
39import Generics.SOP (K(..))
41+import qualified Control.Monad.Fail as Fail
41import Squeal.PostgreSQL.PQ
43import Squeal.PostgreSQL.PQ
42import Squeal.PostgreSQL.Schema
44import Squeal.PostgreSQL.Schema
@@ -105,6 +107,10 @@ instance Monad m => Monad (PoolPQ schemas m) where
105 x' <- x pool
107 x' <- x pool
106 runPoolPQ (f x') pool
108 runPoolPQ (f x') pool
110+-- | `MonadFail` instance for `PoolPQ`.
111+instance Monad m => Fail.MonadFail (PoolPQ schemas m) where
108-- | `MonadTrans` instance for `PoolPQ`.
114-- | `MonadTrans` instance for `PoolPQ`.
109instance MonadTrans (PoolPQ schemas) where
115instance MonadTrans (PoolPQ schemas) where
110 lift m = PoolPQ $ \ _pool -> m
116 lift m = PoolPQ $ \ _pool -> m