Copyright | (C) 2008-2014 Edward Kmett |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | Edward Kmett <ekmett@gmail.com> |
Stability | experimental |
Portability | non-portable (fundeps, MPTCs) |
Safe Haskell | Safe |
Language | Haskell2010 |
Synopsis
- class Comonad w => ComonadTraced m w | w -> m where
- trace :: m -> w a -> a
- traces :: ComonadTraced m w => (a -> m) -> w a -> a
- type Traced m = TracedT m Identity
- traced :: (m -> a) -> Traced m a
- runTraced :: Traced m a -> m -> a
- newtype TracedT m w a = TracedT {
- runTracedT :: w (m -> a)
- module Control.Comonad
- module Control.Comonad.Trans.Class
- module Data.Monoid
ComonadTraced class
class Comonad w => ComonadTraced m w | w -> m where #
Instances
ComonadTraced m w => ComonadTraced m (StoreT s w) # | |
Defined in Control.Comonad.Traced.Class | |
ComonadTraced m w => ComonadTraced m (EnvT e w) # | |
Defined in Control.Comonad.Traced.Class | |
ComonadTraced m w => ComonadTraced m (IdentityT w) # | |
Defined in Control.Comonad.Traced.Class | |
(Comonad w, Monoid m) => ComonadTraced m (TracedT m w) # | |
Defined in Control.Comonad.Traced.Class | |
Monoid m => ComonadTraced m ((->) m :: Type -> Type) # | |
Defined in Control.Comonad.Traced.Class |
traces :: ComonadTraced m w => (a -> m) -> w a -> a #
The Traced comonad
The TracedT comonad transformer
TracedT | |
|
Instances
(Comonad w, Monoid m) => ComonadTraced m (TracedT m w) # | |
Defined in Control.Comonad.Traced.Class | |
(ComonadStore s w, Monoid m) => ComonadStore s (TracedT m w) # | |
Defined in Control.Comonad.Store.Class | |
(ComonadEnv e w, Monoid m) => ComonadEnv e (TracedT m w) # | |
Defined in Control.Comonad.Env.Class | |
ComonadHoist (TracedT m) # | |
Monoid m => ComonadTrans (TracedT m) # | |
Defined in Control.Comonad.Trans.Traced | |
Functor w => Functor (TracedT m w) # | |
Applicative w => Applicative (TracedT m w) # | |
Defined in Control.Comonad.Trans.Traced | |
Distributive w => Distributive (TracedT m w) # | |
Defined in Control.Comonad.Trans.Traced | |
(ComonadApply w, Monoid m) => ComonadApply (TracedT m w) # | |
(Comonad w, Monoid m) => Comonad (TracedT m w) # | |
FunctorWithIndex i w => FunctorWithIndex (s, i) (TracedT s w) # | |
Defined in Control.Comonad.Trans.Traced |
Re-exported modules
module Control.Comonad
module Control.Comonad.Trans.Class
module Data.Monoid