Safe Haskell | None |
---|---|
Language | Haskell2010 |
Documentation
class Monad m => MonadDeepState (s :: *) (s' :: *) (m :: * -> *) | m -> s where Source #
stateM :: (s' -> m (a, s')) -> m a Source #
state :: (s' -> (a, s')) -> m a Source #
Instances
(Monad (t m), MonadTrans t, MonadDeepState s s' m) => MonadDeepState s s' (t m) Source # | |
(Monad m, DeepLenses s s') => MonadDeepState s s' (StateT s m) Source # | |
Defined in Control.Monad.DeepState | |
(Monad m, DeepLenses s s') => MonadDeepState s s' (StateT s m) Source # | |
Defined in Control.Monad.DeepState |
gets :: forall s' s m a. MonadDeepState s s' m => (s' -> a) -> m a Source #
modifyM :: MonadDeepState s s' m => (s' -> m s') -> m () Source #
modifyL :: forall s' s a m. MonadDeepState s s' m => Lens' s' a -> (a -> a) -> m () Source #
modifyML' :: forall s' s a m. MonadDeepState s s' m => Lens' s' a -> (a -> m a) -> m a Source #
modifyML :: forall s' s a m. MonadDeepState s s' m => Lens' s' a -> (a -> m a) -> m () Source #
getL :: forall s' s m a. MonadDeepState s s' m => Lens' s' a -> m a Source #
getsL :: forall s' s m a b. MonadDeepState s s' m => Lens' s' a -> (a -> b) -> m b Source #
setL :: forall s' s m a. MonadDeepState s s' m => Lens' s' a -> a -> m () Source #