{-# LANGUAGE QuantifiedConstraints #-} -- | Provides the functor transformer class. module Control.Functor.Trans ( FunctorTrans (..), ) where {-| The class of functor transformers. Lifting a functor to the stacked functor. -} class (forall g. Functor g => Functor (t g)) => FunctorTrans t where -- | Lift a computation from the argument functor to the constructed functor. lift :: Functor f => f a -> t f a