Copyright | (c) 2023-2024 Sayo Koyoneda |
---|---|
License | MPL-2.0 (see the file LICENSE) |
Maintainer | [email protected] |
Safe Haskell | None |
Language | GHC2021 |
Data.Effect.Unlift
Description
Realizes unliftio
in the form of higher-order effects.
Documentation
data UnliftBase (b :: Type -> Type) (f :: Type -> Type) a where Source #
Constructors
WithRunInBase :: forall (f :: Type -> Type) (b :: Type -> Type) a. ((forall x. f x -> b x) -> b a) -> UnliftBase b f a |
Instances
() => HFunctor (UnliftBase b) Source # | |
Defined in Data.Effect.Unlift Methods hfmap :: forall (f :: Type -> Type) (g :: Type -> Type). (f :-> g) -> UnliftBase b f :-> UnliftBase b g # |
withRunInBase :: forall b a f. SendHOE (UnliftBase b) f => ((forall x. f x -> b x) -> b a) -> f a Source #
withRunInBase' :: forall {k} (tag :: k) b a f. SendHOE (TagH (UnliftBase b) tag) f => ((forall x. f x -> b x) -> b a) -> f a Source #
withRunInBase'' :: forall {k} (key :: k) b a f. SendHOEBy key (UnliftBase b) f => ((forall x. f x -> b x) -> b a) -> f a Source #
type UnliftIO = UnliftBase IO Source #