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 |
Elaborator for the Provider
effect class.
Synopsis
- elaborateProvider :: (c h, e h) => (f ~> h) -> (forall x. i -> h x -> f (g x)) -> Elaborator (ProviderS c e i g) f
- elaborateProviderT :: (Monad m, MonadTrans t, c (t m), e (t m)) => (forall x. i -> t m x -> m (g x)) -> Elaborator (ProviderS c e i g) m
Documentation
elaborateProvider :: (c h, e h) => (f ~> h) -> (forall x. i -> h x -> f (g x)) -> Elaborator (ProviderS c e i g) f Source #
Elaborate the Provider
effect using the given interpreter.
elaborateProviderT :: (Monad m, MonadTrans t, c (t m), e (t m)) => (forall x. i -> t m x -> m (g x)) -> Elaborator (ProviderS c e i g) m Source #
Elaborate the Provider
effect using the given interpreter for some
monad transformer.