profunctors-5.6.2: Profunctors
Copyright (C) 2014-2015 Edward Kmett
License BSD-style (see the file LICENSE)
Maintainer Edward Kmett <ekmett@gmail.com>
Stability experimental
Portability portable
Safe Haskell Safe
Language Haskell2010

Data.Profunctor.Monad

Description

Synopsis

Documentation

class ProfunctorFunctor t where Source #

ProfunctorFunctor has a polymorphic kind since 5.6 .

Methods

promap :: Profunctor p => (p :-> q) -> t p :-> t q Source #

Laws:

promap f . promap g ≡ promap (f . g)
promap idid

Instances

Instances details
ProfunctorFunctor ( Ran p :: ( Type -> Type -> Type ) -> k -> Type -> Type ) Source #
Instance details

Defined in Data.Profunctor.Ran

Methods

promap :: forall (p0 :: Type -> Type -> Type ) (q :: Type -> Type -> Type ). Profunctor p0 => (p0 :-> q) -> Ran p p0 :-> Ran p q Source #

ProfunctorFunctor ( Procompose p :: ( Type -> Type -> Type ) -> Type -> k -> Type ) Source #
Instance details

Defined in Data.Profunctor.Composition

ProfunctorFunctor ( Rift p :: ( Type -> Type -> Type ) -> Type -> k -> Type ) Source #
Instance details

Defined in Data.Profunctor.Composition

Methods

promap :: forall (p0 :: Type -> Type -> Type ) (q :: Type -> Type -> Type ). Profunctor p0 => (p0 :-> q) -> Rift p p0 :-> Rift p q Source #

ProfunctorFunctor Copastro Source #
Instance details

Defined in Data.Profunctor.Strong

ProfunctorFunctor Cotambara Source #
Instance details

Defined in Data.Profunctor.Strong

ProfunctorFunctor Pastro Source #
Instance details

Defined in Data.Profunctor.Strong

ProfunctorFunctor Tambara Source #
Instance details

Defined in Data.Profunctor.Strong

ProfunctorFunctor Environment Source #
Instance details

Defined in Data.Profunctor.Closed

ProfunctorFunctor Closure Source #
Instance details

Defined in Data.Profunctor.Closed

ProfunctorFunctor CopastroSum Source #
Instance details

Defined in Data.Profunctor.Choice

ProfunctorFunctor CotambaraSum Source #
Instance details

Defined in Data.Profunctor.Choice

ProfunctorFunctor PastroSum Source #
Instance details

Defined in Data.Profunctor.Choice

ProfunctorFunctor TambaraSum Source #
Instance details

Defined in Data.Profunctor.Choice

ProfunctorFunctor FreeTraversing Source #
Instance details

Defined in Data.Profunctor.Traversing

ProfunctorFunctor CofreeTraversing Source #
Instance details

Defined in Data.Profunctor.Traversing

ProfunctorFunctor FreeMapping Source #
Instance details

Defined in Data.Profunctor.Mapping

ProfunctorFunctor CofreeMapping Source #
Instance details

Defined in Data.Profunctor.Mapping

ProfunctorFunctor Coyoneda Source #
Instance details

Defined in Data.Profunctor.Yoneda

ProfunctorFunctor Yoneda Source #
Instance details

Defined in Data.Profunctor.Yoneda

ProfunctorFunctor ( Sum p :: ( Type -> Type -> Type ) -> Type -> Type -> Type ) Source #
Instance details

Defined in Data.Profunctor.Monad

Methods

promap :: forall (p0 :: Type -> Type -> Type ) (q :: Type -> Type -> Type ). Profunctor p0 => (p0 :-> q) -> Sum p p0 :-> Sum p q Source #

ProfunctorFunctor ( Product p :: ( Type -> Type -> Type ) -> Type -> Type -> Type ) Source #
Instance details

Defined in Data.Profunctor.Monad

Functor f => ProfunctorFunctor ( Tannen f :: ( Type -> Type -> Type ) -> Type -> Type -> Type ) Source #
Instance details

Defined in Data.Profunctor.Monad

Functor f => ProfunctorFunctor ( Cayley f :: ( Type -> Type -> Type ) -> Type -> Type -> Type ) Source #
Instance details

Defined in Data.Profunctor.Cayley

class ProfunctorFunctor t => ProfunctorMonad t where Source #

Instances

Instances details
ProfunctorMonad Copastro Source #
Instance details

Defined in Data.Profunctor.Strong

ProfunctorMonad Pastro Source #
Instance details

Defined in Data.Profunctor.Strong

ProfunctorMonad Environment Source #
Instance details

Defined in Data.Profunctor.Closed

ProfunctorMonad CopastroSum Source #
Instance details

Defined in Data.Profunctor.Choice

ProfunctorMonad PastroSum Source #
Instance details

Defined in Data.Profunctor.Choice

ProfunctorMonad FreeTraversing Source #
Instance details

Defined in Data.Profunctor.Traversing

ProfunctorMonad FreeMapping Source #
Instance details

Defined in Data.Profunctor.Mapping

ProfunctorMonad Coyoneda Source #
Instance details

Defined in Data.Profunctor.Yoneda

ProfunctorMonad Yoneda Source #
Instance details

Defined in Data.Profunctor.Yoneda

ProfunctorMonad ( Sum p) Source #
Instance details

Defined in Data.Profunctor.Monad

Monad f => ProfunctorMonad ( Tannen f :: ( Type -> Type -> Type ) -> Type -> Type -> Type ) Source #
Instance details

Defined in Data.Profunctor.Monad

Category p => ProfunctorMonad ( Procompose p :: ( Type -> Type -> Type ) -> Type -> Type -> Type ) Source #
Instance details

Defined in Data.Profunctor.Composition

( Functor f, Monad f) => ProfunctorMonad ( Cayley f :: ( Type -> Type -> Type ) -> Type -> Type -> Type ) Source #

Cayley transforms Monads in Hask into monads on Prof

Instance details

Defined in Data.Profunctor.Cayley

class ProfunctorFunctor t => ProfunctorComonad t where Source #

Instances

Instances details
ProfunctorComonad Cotambara Source #
Instance details

Defined in Data.Profunctor.Strong

ProfunctorComonad Tambara Source #
Instance details

Defined in Data.Profunctor.Strong

ProfunctorComonad Closure Source #
Instance details

Defined in Data.Profunctor.Closed

ProfunctorComonad CotambaraSum Source #
Instance details

Defined in Data.Profunctor.Choice

ProfunctorComonad TambaraSum Source #
Instance details

Defined in Data.Profunctor.Choice

ProfunctorComonad CofreeTraversing Source #
Instance details

Defined in Data.Profunctor.Traversing

ProfunctorComonad CofreeMapping Source #
Instance details

Defined in Data.Profunctor.Mapping

ProfunctorComonad Coyoneda Source #
Instance details

Defined in Data.Profunctor.Yoneda

ProfunctorComonad Yoneda Source #
Instance details

Defined in Data.Profunctor.Yoneda

ProfunctorComonad ( Product p) Source #
Instance details

Defined in Data.Profunctor.Monad

Comonad f => ProfunctorComonad ( Tannen f :: ( Type -> Type -> Type ) -> Type -> Type -> Type ) Source #
Instance details

Defined in Data.Profunctor.Monad

Category p => ProfunctorComonad ( Rift p :: ( Type -> Type -> Type ) -> Type -> Type -> Type ) Source #
Instance details

Defined in Data.Profunctor.Composition

Category p => ProfunctorComonad ( Ran p :: ( Type -> Type -> Type ) -> Type -> Type -> Type ) Source #
Instance details

Defined in Data.Profunctor.Ran

Comonad f => ProfunctorComonad ( Cayley f :: ( Type -> Type -> Type ) -> Type -> Type -> Type ) Source #

Cayley transforms Comonads in Hask into comonads on Prof

Instance details

Defined in Data.Profunctor.Cayley