indexed-transformers-0.1.0.4: Atkey indexed monad transformers
Copyright(C) 2024 Eitan Chatav
LicenseBSD 3-Clause License (see the file LICENSE)
MaintainerEitan Chatav <[email protected]>
Safe HaskellSafe-Inferred
LanguageHaskell2010

Control.Monad.Trans.Indexed.Do

Description

Qualified Indexed.do notation.

>>> :set -XQualifiedDo
>>> import qualified Control.Monad.Trans.Indexed.Do as Indexed
Synopsis

Documentation

(>>=) :: forall {k1} t (m :: Type -> Type) (i :: k1) (j :: k1) x (k2 :: k1) y. (IxMonadTrans t, Monad m) => t i j m x -> (x -> t j k2 m y) -> t i k2 m y Source #

(>>) :: forall {k1} t (m :: Type -> Type) (i :: k1) (j :: k1) x (k2 :: k1) y. (IxMonadTrans t, Monad m) => t i j m x -> t j k2 m y -> t i k2 m y Source #

return :: Monad m => a -> m a #

Inject a value into the monadic type. This function should not be different from its default implementation as pure. The justification for the existence of this function is merely historic.

fail :: forall {k} t (m :: Type -> Type) (i :: k) (j :: k) x. (IxMonadTrans t, MonadFail m, i ~ j) => String -> t i j m x Source #