bolt-0.1.0.3: src/Database/Bolt/Exception.hs
module Database.Bolt.Exception
( internalErr
, transportErr
, protocolErr
, authFail
, reqFail
, reqIgnore
) where
import Control.Exception
import Data.Text (Text)
data BoltException = AuthenticationFailure Text
| RequestFailure Text
| RequestIgnored Text
| InternalError Text
| TransportError Text
| ProtocolError Text
deriving (Show)
instance Exception BoltException
authFail :: Text -> IO a
authFail = throwIO . AuthenticationFailure
reqFail :: Text -> IO a
reqFail = throwIO . RequestFailure
reqIgnore :: Text -> IO a
reqIgnore = throwIO . RequestIgnored
internalErr :: Text -> IO a
internalErr = throwIO . InternalError
transportErr :: Text -> IO a
transportErr = throwIO . TransportError
protocolErr :: Text -> IO a
protocolErr = throwIO . ProtocolError