lens-3.8.0.2: Lenses, Folds and Traversals

Portabilitynon-portable
Stabilityprovisional
MaintainerEdward Kmett <ekmett@gmail.com>
Safe HaskellTrustworthy

Control.Lens.Internal.Action

Contents

Description

 

Synopsis

Actions

class (Monad m, Gettable f) => Effective m r f | f -> m r whereSource

An Effective Functor ignores its argument and is isomorphic to a Monad wrapped around a value.

That said, the Monad is possibly rather unrelated to any Applicative structure.

Methods

effective :: m r -> f aSource

ineffective :: f a -> m rSource

Instances

newtype Effect m r a Source

Wrap a monadic effect with a phantom type argument.

Constructors

Effect 

Fields

getEffect :: m r
 

Instances

(Gettable (Effect m r), Monad m) => Effective m r (Effect m r) 
Functor (Effect m r) 
(Functor (Effect m r), Monad m, Monoid r) => Applicative (Effect m r) 
(Functor (Effect m r), Apply m, Semigroup r) => Apply (Effect m r) 
Functor (Effect m r) => Gettable (Effect m r) 
(Monad m, Monoid r) => Monoid (Effect m r a) 
(Apply m, Semigroup r) => Semigroup (Effect m r a)