parsley-core-2.0.0.0: A fast parser combinator library backed by Typed Template Haskell
Safe HaskellNone
LanguageHaskell2010

Parsley.Internal.Common.State

Documentation

data StateT s m a Source #

Instances

Instances details
MonadState s (StateT s m) Source # 
Instance details

Defined in Parsley.Internal.Common.State

Methods

get :: StateT s m s #

put :: s -> StateT s m () #

state :: (s -> (a, s)) -> StateT s m a #

MonadTrans (StateT s :: (Type -> Type) -> Type -> Type) Source # 
Instance details

Defined in Parsley.Internal.Common.State

Methods

lift :: Monad m => m a -> StateT s m a #

Monad (StateT s m) Source # 
Instance details

Defined in Parsley.Internal.Common.State

Methods

(>>=) :: StateT s m a -> (a -> StateT s m b) -> StateT s m b #

(>>) :: StateT s m a -> StateT s m b -> StateT s m b #

return :: a -> StateT s m a #

Functor (StateT s m) Source # 
Instance details

Defined in Parsley.Internal.Common.State

Methods

fmap :: (a -> b) -> StateT s m a -> StateT s m b #

(<$) :: a -> StateT s m b -> StateT s m a #

MonadFix m => MonadFix (StateT s m) Source # 
Instance details

Defined in Parsley.Internal.Common.State

Methods

mfix :: (a -> StateT s m a) -> StateT s m a #

MonadFail m => MonadFail (StateT s m) Source # 
Instance details

Defined in Parsley.Internal.Common.State

Methods

fail :: String -> StateT s m a #

Applicative (StateT s m) Source # 
Instance details

Defined in Parsley.Internal.Common.State

Methods

pure :: a -> StateT s m a #

(<*>) :: StateT s m (a -> b) -> StateT s m a -> StateT s m b #

liftA2 :: (a -> b -> c) -> StateT s m a -> StateT s m b -> StateT s m c #

(*>) :: StateT s m a -> StateT s m b -> StateT s m b #

(<*) :: StateT s m a -> StateT s m b -> StateT s m a #

MonadIO m => MonadIO (StateT s m) Source # 
Instance details

Defined in Parsley.Internal.Common.State

Methods

liftIO :: IO a -> StateT s m a #

Alternative m => Alternative (StateT s m) Source # 
Instance details

Defined in Parsley.Internal.Common.State

Methods

empty :: StateT s m a #

(<|>) :: StateT s m a -> StateT s m a -> StateT s m a #

some :: StateT s m a -> StateT s m [a] #

many :: StateT s m a -> StateT s m [a] #

runState :: State s a -> s -> (a, s) Source #

evalState :: State s a -> s -> a Source #

execState :: State s a -> s -> s Source #

runStateT :: Monad m => StateT s m a -> s -> m (a, s) Source #

evalStateT :: Monad m => StateT s m a -> s -> m a Source #

execStateT :: Monad m => StateT s m a -> s -> m s Source #