----------------------------------------------------------------------------- -- | -- Module: Data.Functor.Transformer -- -- Functors on indexed-types. ---------------------------------------------------------------------------- module Data.Functor.Transformer ( -- * Functor Func.FunctorT(tmap) -- * Traversable , Trav.TraversableT(ttraverse) -- ** Utility functions , Trav.ttraverse_ , Trav.tfoldMap , Trav.tsequence , Trav.tsequence' -- * Distributive , Dist.DistributiveT(tdistribute) , Dist.tdistribute' , Dist.tcotraverse , Dist.tdecompose , Dist.trecompose -- * Applicative , Appl.ApplicativeT(tpure, tprod) -- ** Utility functions , Appl.tzip , Appl.tunzip , Appl.tzipWith , Appl.tzipWith3 , Appl.tzipWith4 -- * Monad , Mon.MonadT(..) -- * Constraints and instance dictionaries , Cons.ConstraintsT(..) , Cons.AllTF -- ** Utility functions , Cons.tmapC , Cons.ttraverseC -- * Support for generic derivations , GenericsN.Rec(..) ) where import qualified Barbies.Internal.ApplicativeT as Appl import qualified Barbies.Internal.ConstraintsT as Cons import qualified Barbies.Internal.DistributiveT as Dist import qualified Barbies.Internal.FunctorT as Func import qualified Barbies.Internal.MonadT as Mon import qualified Barbies.Internal.TraversableT as Trav import qualified Data.Generics.GenericN as GenericsN