-- Hoogle documentation, generated by Haddock
-- See Hoogle, http://www.haskell.org/hoogle/


-- | Bracketed connection for HDBC
--   
--   This package contains a base bracketed function to call close
--   correctly against opend DB connection.
@package HDBC-session
@version 0.1.1.1


-- | This module provides a base bracketed function to call close correctly
--   against opend DB connection.
module Database.HDBC.Session

-- | Same as <a>withConnectionIO</a> other than issuing commit at the end
--   of transaction body. In other words, the transaction with no exception
--   is committed. Handy defintion for simple transactions.
withConnectionCommit :: IConnection conn => IO conn -> (conn -> IO a) -> IO a

-- | Run a transaction on a HDBC <a>IConnection</a> and close the
--   connection. Simple <a>IO</a> version.
withConnectionIO :: IConnection conn => IO conn -> (conn -> IO a) -> IO a

-- | Same as <a>withConnectionIO</a> other than wrapping transaction body
--   in <a>handleSqlError'</a>.
withConnectionIO' :: IConnection conn => IO conn -> (conn -> IO a) -> IO a

-- | Run a transaction on a HDBC IConnection and close the connection.
withConnection :: (Monad m, IConnection conn) => (forall c. m c -> (c -> m ()) -> (c -> m a) -> m a) -> (forall b. IO b -> m b) -> IO conn -> (conn -> m a) -> m a

-- | show <a>SqlError</a> not to show <a>String</a> fields.
showSqlError :: SqlError -> String

-- | Like <tt>handleSqlError</tt>, but not to show <a>String</a> fields of
--   SqlError.
handleSqlError' :: IO a -> IO a
