Safe Haskell | None |
---|---|
Language | Haskell2010 |
Synopsis
- data Error = Error {
- description :: Text
- reasons :: [Error]
- type MonadE = MonadError Error
- correct :: MonadError e m => a -> m a -> m a
- errorContext :: MonadE m => Text -> m a -> m a
- liftEither :: MonadError e m => Either e a -> m a
- liftEitherString :: (MonadError e m, IsString e) => Either String a -> m a
- liftMaybe :: MonadE m => Text -> Maybe a -> m a
- throwError :: MonadError e m => e -> m a
- throwErrorString :: (MonadError e m, IsString e) => String -> m a
- throwErrorText :: MonadE m => Text -> m a
- tryIO :: (MonadE m, MonadIO m, HasCallStack) => IO a -> m a
Documentation
Error | |
|
type MonadE = MonadError Error Source #
correct :: MonadError e m => a -> m a -> m a Source #
errorContext :: MonadE m => Text -> m a -> m a Source #
liftEither :: MonadError e m => Either e a -> m a #
Lifts an
into any Either
e
.MonadError
e
do { val <- liftEither =<< action1; action2 }
where action1
returns an Either
to represent errors.
Since: mtl-2.2.2
liftEitherString :: (MonadError e m, IsString e) => Either String a -> m a Source #
throwError :: MonadError e m => e -> m a #
Is used within a monadic computation to begin exception processing.
throwErrorString :: (MonadError e m, IsString e) => String -> m a Source #
throwErrorText :: MonadE m => Text -> m a Source #