| Safe Haskell | None |
|---|---|
| Language | Haskell2010 |
Bluefin.Internal.Capability.ThrowCatch
Synopsis
- data ThrowCatch ex (e :: Effects)
- throw :: forall (e :: Effects) (es :: Effects) ex a. e <: es => ThrowCatch ex e -> ex -> Eff es a
- try :: forall ex (es :: Effects) a. (forall (e :: Effects). ThrowCatch ex e -> Eff (e :& es) a) -> Eff es (Either ex a)
- catch :: forall ex (es :: Effects) a. (forall (e :: Effects). ThrowCatch ex e -> Eff (e :& es) a) -> (ex -> Eff es a) -> Eff es a
- handle :: forall ex (es :: Effects) a. (ex -> Eff es a) -> (forall (e :: Effects). ThrowCatch ex e -> Eff (e :& es) a) -> Eff es a
- localTry :: forall (e :: Effects) (es :: Effects) ex a. e <: es => ThrowCatch ex e -> Eff es a -> Eff es (Either ex a)
- localHandle :: forall (e :: Effects) (es :: Effects) ex a. e <: es => ThrowCatch ex e -> (ex -> Eff es a) -> Eff es a -> Eff es a
- localCatch :: forall (e :: Effects) (es :: Effects) ex a. e <: es => ThrowCatch ex e -> Eff es a -> (ex -> Eff es a) -> Eff es a
Documentation
data ThrowCatch ex (e :: Effects) Source #
A scoped exception capability that can catch within its own scope.
Instances
| e <: es => OneWayCoercible (ThrowCatch ex e :: Type) (ThrowCatch ex es :: Type) Source # | |
Defined in Bluefin.Internal Methods oneWayCoercibleImpl :: OneWayCoercibleD (ThrowCatch ex e) (ThrowCatch ex es) Source # | |
| Handle (ThrowCatch ex) Source # | |
Defined in Bluefin.Internal Methods handleImpl :: HandleD (ThrowCatch ex) Source # | |
Arguments
| :: forall (e :: Effects) (es :: Effects) ex a. e <: es | |
| => ThrowCatch ex e | |
| -> ex | |
| -> Eff es a | ͘ |