comonad-5.0.8: Comonads
Copyright (C) 2008-2013 Edward Kmett
License BSD-style (see the file LICENSE)
Maintainer Edward Kmett <ekmett@gmail.com>
Stability provisional
Portability portable
Safe Haskell Safe
Language Haskell2010

Control.Comonad.Hoist.Class

Description

Documentation

class ComonadHoist t where Source #

Methods

cohoist :: ( Comonad w, Comonad v) => ( forall x. w x -> v x) -> t w a -> t v a Source #

Given any comonad-homomorphism from w to v this yields a comonad homomorphism from t w to t v .

Instances

Instances details
ComonadHoist ( IdentityT :: ( Type -> Type ) -> Type -> Type ) Source #
Instance details

Defined in Control.Comonad.Hoist.Class

Methods

cohoist :: ( Comonad w, Comonad v) => ( forall x. w x -> v x) -> IdentityT w a -> IdentityT v a Source #

ComonadHoist ( EnvT e) Source #
Instance details

Defined in Control.Comonad.Trans.Env

Methods

cohoist :: ( Comonad w, Comonad v) => ( forall x. w x -> v x) -> EnvT e w a -> EnvT e v a Source #

ComonadHoist ( StoreT s) Source #
Instance details

Defined in Control.Comonad.Trans.Store

Methods

cohoist :: ( Comonad w, Comonad v) => ( forall x. w x -> v x) -> StoreT s w a -> StoreT s v a Source #

ComonadHoist ( TracedT m) Source #
Instance details

Defined in Control.Comonad.Trans.Traced

Methods

cohoist :: ( Comonad w, Comonad v) => ( forall x. w x -> v x) -> TracedT m w a -> TracedT m v a Source #