| Copyright | (c) 2023 Sayo contributors |
|---|---|
| License | MPL-2.0 (see the LICENSE file) |
| Maintainer | ymdfield@outlook.jp |
| Safe Haskell | Safe-Inferred |
| Language | GHC2021 |
Control.Monad.Hefty.Except
Description
Interpreters for the Except effects.
Synopsis
- runCatch :: forall e es a. (Throw e `In` es, FOEs es) => Eff (Catch e ': es) a -> Eff es a
- runExcept :: forall e es a. FOEs es => Eff (Catch e ': (Throw e ': es)) a -> Eff es (Either e a)
- runThrow :: forall e es a. FOEs es => Eff (Throw e ': es) a -> Eff es (Either e a)
- handleThrow :: forall e f g a. Applicative g => AlgHandler (Throw e) f g (Either e a)
- handleCatch :: forall e es. (Throw e `In` es, FOEs es) => Catch e ~~> Eff es
- module Data.Effect.Except
Documentation
runCatch :: forall e es a. (Throw e `In` es, FOEs es) => Eff (Catch e ': es) a -> Eff es a Source #
Interpret the Catch effect.
runExcept :: forall e es a. FOEs es => Eff (Catch e ': (Throw e ': es)) a -> Eff es (Either e a) Source #
runThrow :: forall e es a. FOEs es => Eff (Throw e ': es) a -> Eff es (Either e a) Source #
Interpret the Throw effect.
handleThrow :: forall e f g a. Applicative g => AlgHandler (Throw e) f g (Either e a) Source #
A handler for the Throw effect.
handleCatch :: forall e es. (Throw e `In` es, FOEs es) => Catch e ~~> Eff es Source #
A handler for the Catch effect.
module Data.Effect.Except