Control.Effect.Pure
Contents
data Pure (m :: * -> *) k Source #
Defined in Control.Effect.Carrier
Methods
handle :: (Functor f, Monad m) => f () -> (forall x. f (m x) -> n (f x)) -> Pure m a -> Pure n (f a) Source #
fmap' :: forall (f :: Type -> Type) a b. Functor (Pure f) => (a -> b) -> Pure f a -> Pure f b Source #
hmap :: Functor m => (forall x. m x -> n x) -> Pure m a -> Pure n a Source #
eff :: Pure PureC a -> PureC a Source #
Defined in Control.Effect.Pure
fmap :: (a -> b) -> Pure m a -> Pure m b #
(<$) :: a -> Pure m b -> Pure m a #
Associated Types
type Rep1 (Pure m) :: k -> Type #
from1 :: forall (a :: k). Pure m a -> Rep1 (Pure m) a #
to1 :: forall (a :: k). Rep1 (Pure m) a -> Pure m a #
run :: PureC a -> a Source #
Run an action exhausted of effects to produce its final result value.
newtype PureC a Source #
Constructors
Fields
(>>=) :: PureC a -> (a -> PureC b) -> PureC b #
(>>) :: PureC a -> PureC b -> PureC b #
return :: a -> PureC a #
fmap :: (a -> b) -> PureC a -> PureC b #
(<$) :: a -> PureC b -> PureC a #
mfix :: (a -> PureC a) -> PureC a #
pure :: a -> PureC a #
(<*>) :: PureC (a -> b) -> PureC a -> PureC b #
liftA2 :: (a -> b -> c) -> PureC a -> PureC b -> PureC c #
(*>) :: PureC a -> PureC b -> PureC b #
(<*) :: PureC a -> PureC b -> PureC a #