| Copyright | (c) 2023 Yamada Ryo |
|---|---|
| License | MPL-2.0 (see the file LICENSE) |
| Maintainer | ymdfield@outlook.jp |
| Stability | experimental |
| Portability | portable |
| Safe Haskell | Safe-Inferred |
| Language | GHC2021 |
Control.Effect.Interpreter.Heftia.Provider.Implicit
Description
Elaborator for the ImplicitProvider effect class.
Synopsis
- elaborateImplicitProvider :: (c g, e g) => (f ~> g) -> (i -> forall x. g x -> f x) -> Elab (ImplicitProvider' c i e) f
- runImplicitProvider :: (e (Eff u fr eh (LAsk i ': ef)), c (Eff u fr eh (LAsk i ': ef)), Freer c fr, Union u, HFunctor (u eh), Applicative (Eff u fr eh ef)) => Elab (ImplicitProvider' c i e) (Eff u fr eh ef)
Documentation
elaborateImplicitProvider :: (c g, e g) => (f ~> g) -> (i -> forall x. g x -> f x) -> Elab (ImplicitProvider' c i e) f Source #
Elaborate the ImplicitProvider' effect using the given interpreter.
runImplicitProvider :: (e (Eff u fr eh (LAsk i ': ef)), c (Eff u fr eh (LAsk i ': ef)), Freer c fr, Union u, HFunctor (u eh), Applicative (Eff u fr eh ef)) => Elab (ImplicitProvider' c i e) (Eff u fr eh ef) Source #