| Copyright | (c) Sirui Lu 2023 |
|---|---|
| License | BSD-3-Clause (see the LICENSE file) |
| Maintainer | siruilu@cs.washington.edu |
| Stability | Experimental |
| Portability | GHC only |
| Safe Haskell | Trustworthy |
| Language | Haskell2010 |
Grisette.Lib.Control.Monad.Trans.State.Lazy
Description
Synopsis
- mrgState :: (Monad m, UnionLike m, Mergeable s, Mergeable a) => (s -> (a, s)) -> StateT s m a
- mrgRunStateT :: (Monad m, UnionLike m, Mergeable s, Mergeable a) => StateT s m a -> s -> m (a, s)
- mrgEvalStateT :: (Monad m, UnionLike m, Mergeable a) => StateT s m a -> s -> m a
- mrgExecStateT :: (Monad m, UnionLike m, Mergeable s) => StateT s m a -> s -> m s
- mrgMapStateT :: (UnionLike n, Mergeable b, Mergeable s) => (m (a, s) -> n (b, s)) -> StateT s m a -> StateT s n b
- mrgWithStateT :: (UnionLike m, Mergeable s, Mergeable a) => (s -> s) -> StateT s m a -> StateT s m a
- mrgGet :: (Monad m, UnionLike m, Mergeable s) => StateT s m s
- mrgPut :: (Monad m, UnionLike m, Mergeable s) => s -> StateT s m ()
- mrgModify :: (Monad m, UnionLike m, Mergeable s) => (s -> s) -> StateT s m ()
- mrgModify' :: (Monad m, UnionLike m, Mergeable s) => (s -> s) -> StateT s m ()
- mrgGets :: (Monad m, UnionLike m, Mergeable s, Mergeable a) => (s -> a) -> StateT s m a
mrg* variants for operations in Control.Monad.Trans.State.Lazy
mrgState :: (Monad m, UnionLike m, Mergeable s, Mergeable a) => (s -> (a, s)) -> StateT s m a Source #
state with MergingStrategy knowledge
propagation.
mrgRunStateT :: (Monad m, UnionLike m, Mergeable s, Mergeable a) => StateT s m a -> s -> m (a, s) Source #
runStateT with MergingStrategy knowledge
propagation.
mrgEvalStateT :: (Monad m, UnionLike m, Mergeable a) => StateT s m a -> s -> m a Source #
evalStateT with MergingStrategy
knowledge propagation.
mrgExecStateT :: (Monad m, UnionLike m, Mergeable s) => StateT s m a -> s -> m s Source #
execStateT with MergingStrategy
knowledge propagation.
mrgMapStateT :: (UnionLike n, Mergeable b, Mergeable s) => (m (a, s) -> n (b, s)) -> StateT s m a -> StateT s n b Source #
mapStateT with MergingStrategy knowledge
propagation.
mrgWithStateT :: (UnionLike m, Mergeable s, Mergeable a) => (s -> s) -> StateT s m a -> StateT s m a Source #
withStateT with MergingStrategy
knowledge propagation.
mrgGet :: (Monad m, UnionLike m, Mergeable s) => StateT s m s Source #
get with MergingStrategy knowledge
propagation.
mrgPut :: (Monad m, UnionLike m, Mergeable s) => s -> StateT s m () Source #
put with MergingStrategy knowledge
propagation.
mrgModify :: (Monad m, UnionLike m, Mergeable s) => (s -> s) -> StateT s m () Source #
modify with MergingStrategy knowledge
propagation.