Synopsis

# Documentation

newtype Ix (m :: Type -> Type) i j a Source #

The free indexed monad generated from a monad m. Users are not expected to use Ix directly, but to newtype over it, specializing the kinds of i and j as necessary.

GeneralizedNewtypeDeriving can be used to get the instances of IxFunctor, IxPointed, IxApplicative, IxMonad, IxMonadZero and IxMonadPlus for free.

Constructors

 Ix FieldsrunIx :: m a
Instances
Lift an m action into 'Ix m', maintaining the current index.
Lift an m action into 'Ix m', changing the current index. unsafeLiftIx is obviously unsafe due to the fact that it can arbitrarily change the index.