Copyright | (C) 2008-2011 Edward Kmett |
---|---|
License | BSD-style (see the file LICENSE) |
Maintainer | Edward Kmett <ekmett@gmail.com> |
Stability | experimental |
Portability | fundeps, MPTCs |
Safe Haskell | Safe |
Language | Haskell2010 |
Synopsis
- class (Functor f, Comonad w) => ComonadCofree f w | w -> f where
- unwrap :: w a -> f (w a)
Documentation
class (Functor f, Comonad w) => ComonadCofree f w | w -> f where #
Allows you to peel a layer off a cofree comonad.
Instances
ComonadCofree [] Tree # | |
Defined in Control.Comonad.Cofree.Class | |
ComonadCofree Maybe NonEmpty # | |
Functor f => ComonadCofree f (Cofree f) # | |
Defined in Control.Comonad.Cofree | |
Comonad w => ComonadCofree Identity (CoiterT w) # | |
(ComonadCofree f w, Monoid m) => ComonadCofree f (TracedT m w) # | |
Defined in Control.Comonad.Cofree.Class | |
ComonadCofree f w => ComonadCofree f (StoreT s w) # | |
Defined in Control.Comonad.Cofree.Class | |
ComonadCofree f w => ComonadCofree f (EnvT e w) # | |
Defined in Control.Comonad.Cofree.Class | |
ComonadCofree f w => ComonadCofree f (IdentityT w) # | |
Defined in Control.Comonad.Cofree.Class | |
(Functor f, Comonad w) => ComonadCofree f (CofreeT f w) # | |
Defined in Control.Comonad.Trans.Cofree | |
ComonadCofree (Const b :: Type -> Type) ((,) b) # | |
Defined in Control.Comonad.Cofree.Class |