Module

Control.Monad.Indexed

#IxMonad

class (IxApplicative m, IxBind m) <= IxMonad m 

#iap

iap :: forall m a b x y z. IxMonad m => m x y (a -> b) -> m y z a -> m x z b

#iwhenM

iwhenM :: forall m x y. IxMonad m => m x y Boolean -> m y y Unit -> m x y Unit

#iunlessM

iunlessM :: forall m x y. IxMonad m => m x y Boolean -> m y y Unit -> m x y Unit

Re-exports from Control.Applicative.Indexed

#IxApplicative

class (IxApply m) <= IxApplicative m  where

Members

  • ipure :: forall a x. a -> m x x a

#iwhen

iwhen :: forall m x. IxApplicative m => Boolean -> m x x Unit -> m x x Unit

#iunless

iunless :: forall m x. IxApplicative m => Boolean -> m x x Unit -> m x x Unit

Re-exports from Control.Apply.Indexed

#IxApply

class (IxFunctor m) <= IxApply m  where

Members

  • iapply :: forall a b x y z. m x y (a -> b) -> m y z a -> m x z b

#iapplySecond

iapplySecond :: forall m a b x y z. IxApply m => m x y a -> m y z b -> m x z b

#iapplyFirst

iapplyFirst :: forall m a b x y z. IxApply m => m x y a -> m y z b -> m x z a

#(<*:)

Operator alias for Control.Apply.Indexed.iapplyFirst (left-associative / precedence 4)

#(:*>)

Operator alias for Control.Apply.Indexed.iapplySecond (left-associative / precedence 4)

Re-exports from Control.Bind.Indexed

#IxBind

class (IxApply m) <= IxBind m  where

Members

  • ibind :: forall a b x y z. m x y a -> (a -> m y z b) -> m x z b

#ibindFlipped

ibindFlipped :: forall m a b x y z. IxBind m => (a -> m y z b) -> m x y a -> m x z b

#composeiKleisliFlipped

composeiKleisliFlipped :: forall m a b c x y z. IxBind m => (b -> m y z c) -> (a -> m x y b) -> a -> m x z c

#composeiKleisli

composeiKleisli :: forall m a b c x y z. IxBind m => (a -> m x y b) -> (b -> m y z c) -> a -> m x z c

#(=<<:)

Operator alias for Control.Bind.Indexed.ibindFlipped (right-associative / precedence 1)

#(<=<:)

Operator alias for Control.Bind.Indexed.composeiKleisliFlipped (right-associative / precedence 1)

#(:>>=)

Operator alias for Control.Bind.Indexed.ibind (left-associative / precedence 1)

#(:>=>)

Operator alias for Control.Bind.Indexed.composeiKleisli (right-associative / precedence 1)

Re-exports from Data.Functor.Indexed

#IxFunctor

class IxFunctor f  where

Members

  • imap :: forall a b x y. (a -> b) -> f x y a -> f x y b

#ivoidRight

ivoidRight :: forall f a b x y. IxFunctor f => a -> f x y b -> f x y a

#ivoidLeft

ivoidLeft :: forall f a b x y. IxFunctor f => f x y a -> b -> f x y b

#ivoid

ivoid :: forall f a x y. IxFunctor f => f x y a -> f x y Unit

#(<$:)

Operator alias for Data.Functor.Indexed.ivoidRight (left-associative / precedence 4)

#(:$>)

Operator alias for Data.Functor.Indexed.ivoidLeft (left-associative / precedence 4)

Modules