Module

Control.Comonad.Env.Trans

This module defines the environment comonad transformer, EnvT.

#EnvT

newtype EnvT e w a

Constructors

Instances

#runEnvT

runEnvT :: forall e w a. EnvT e w a -> Tuple e (w a)

Unwrap a value in the EnvT comonad.

#withEnvT

withEnvT :: forall e1 e2 w a. (e1 -> e2) -> EnvT e1 w a -> EnvT e2 w a

Change the environment type in an EnvT context.

#mapEnvT

mapEnvT :: forall e w1 w2 a b. (w1 a -> w2 b) -> EnvT e w1 a -> EnvT e w2 b

Change the underlying comonad and data type in an EnvT context.

Modules