Module
Control.Comonad.Store.Class
- Package
- purescript-transformers
- Repository
- purescript/purescript-transformers
This module defines the ComonadStore type class and its instances.
#ComonadStore Source
class (Comonad w) <= ComonadStore s w | w -> s whereThe ComonadStore type class represents those monads which support local position information via
pos and peek.
posreads the current position.peekreads the value at the specified position in the specified context.
An implementation is provided for StoreT.
Laws:
pos (extend _ x) = pos xpeek (pos x) x = extract x
For example:
blur :: forall w. (ComonadStore Number w) -> w Number -> w Number
blur = extend \r -> (peeks (\n -> n - 1) r + peeks (\n -> n + 1) r) / 2)
Members
Instances
(Comonad w) => ComonadStore s (StoreT s w)(ComonadStore s w) => ComonadStore s (EnvT e w)(ComonadStore s w, Monoid m) => ComonadStore s (TracedT m w)
#experiment Source
experiment :: forall f a w s. ComonadStore s w => Functor f => (s -> f s) -> w a -> f aExtract a collection of values from positions which depend on the current position.
#peeks Source
peeks :: forall s a w. ComonadStore s w => (s -> s) -> w a -> aExtract a value from a position which depends on the current position.
#seek Source
seek :: forall s a w. ComonadStore s w => s -> w a -> w aReposition the focus at the specified position.
#seeks Source
seeks :: forall s a w. ComonadStore s w => (s -> s) -> w a -> w aReposition the focus at the specified position, which depends on the current position.
- Modules
- Control.
Comonad. Env - Control.
Comonad. Env. Class - Control.
Comonad. Env. Trans - Control.
Comonad. Store - Control.
Comonad. Store. Class - Control.
Comonad. Store. Trans - Control.
Comonad. Traced - Control.
Comonad. Traced. Class - Control.
Comonad. Traced. Trans - Control.
Comonad. Trans. Class - Control.
Monad. Cont - Control.
Monad. Cont. Class - Control.
Monad. Cont. Trans - Control.
Monad. Error. Class - Control.
Monad. Except - Control.
Monad. Except. Trans - Control.
Monad. Identity. Trans - Control.
Monad. List. Trans - Control.
Monad. Maybe. Trans - Control.
Monad. RWS - Control.
Monad. RWS. Trans - Control.
Monad. Reader - Control.
Monad. Reader. Class - Control.
Monad. Reader. Trans - Control.
Monad. State - Control.
Monad. State. Class - Control.
Monad. State. Trans - Control.
Monad. Trans. Class - Control.
Monad. Writer - Control.
Monad. Writer. Class - Control.
Monad. Writer. Trans