module Network.HTTP.Lucu.Abortion
( Abortion(..)
, abort -- MonadIO m => StatusCode -> [ (String, String) ] -> String -> m a
- , abortIO -- StatusCode -> [ (String, String) ] -> String -> IO a
, abortSTM -- StatusCode -> [ (String, String) ] -> String -> STM a
, abortA -- ArrowIO a => StatusCode -> [ (String, String) ] -> String -> a b c
, aboPage -- Config -> Abortion -> String
abort :: MonadIO m => StatusCode -> [ (String, String) ] -> String -> m a
abort status headers msg
- = liftIO $ abortIO status headers msg
-
-
-abortIO :: StatusCode -> [ (String, String) ] -> String -> IO a
-abortIO status headers msg
= let abo = Abortion status headers msg
exc = DynException (toDyn abo)
in
- throwIO exc
+ liftIO $ throwIO exc
abortSTM :: StatusCode -> [ (String, String) ] -> String -> STM a
abortSTM status headers msg
- = unsafeIOToSTM $ abortIO status headers msg
+ = unsafeIOToSTM $ abort status headers msg
abortA :: ArrowIO a => StatusCode -> [ (String, String) ] -> String -> a b c
abortA status headers msg
- = arrIO0 $ abortIO status headers msg
+ = arrIO0 $ abort status headers msg
aboPage :: Config -> Abortion -> String