fast-tags-1.4.2: Fast incremental vi and emacs tags.
Control.Monad.EitherK
Description
A continuation-based error monad.
data EitherKT e m a Source #
Instances
Methods
get :: EitherKT e m s #
put :: s -> EitherKT e m () #
state :: (s -> (a, s)) -> EitherKT e m a #
throwError :: e -> EitherKT e m a #
catchError :: EitherKT e m a -> (e -> EitherKT e m a) -> EitherKT e m a #
(>>=) :: EitherKT e m a -> (a -> EitherKT e m b) -> EitherKT e m b #
(>>) :: EitherKT e m a -> EitherKT e m b -> EitherKT e m b #
return :: a -> EitherKT e m a #
fail :: String -> EitherKT e m a #
fmap :: (a -> b) -> EitherKT e m a -> EitherKT e m b #
(<$) :: a -> EitherKT e m b -> EitherKT e m a #
pure :: a -> EitherKT e m a #
(<*>) :: EitherKT e m (a -> b) -> EitherKT e m a -> EitherKT e m b #
liftA2 :: (a -> b -> c) -> EitherKT e m a -> EitherKT e m b -> EitherKT e m c #
(*>) :: EitherKT e m a -> EitherKT e m b -> EitherKT e m b #
(<*) :: EitherKT e m a -> EitherKT e m b -> EitherKT e m a #
empty :: EitherKT String m a #
(<|>) :: EitherKT String m a -> EitherKT String m a -> EitherKT String m a #
some :: EitherKT String m a -> EitherKT String m [a] #
many :: EitherKT String m a -> EitherKT String m [a] #
runEitherKT :: EitherKT e m a -> forall r. (e -> m r) -> (a -> m r) -> m r Source #