hsdev-0.3.0.0: Haskell development library

Safe HaskellNone
LanguageHaskell98

HsDev.Database.Update.Types

Documentation

newtype UpdateM m a Source #

Instances

MonadTrans UpdateM Source # 

Methods

lift :: Monad m => m a -> UpdateM m a #

Monad m => MonadReader UpdateState (UpdateM m) Source # 

Methods

ask :: UpdateM m UpdateState #

local :: (UpdateState -> UpdateState) -> UpdateM m a -> UpdateM m a #

reader :: (UpdateState -> a) -> UpdateM m a #

MonadBase b m => MonadBase b (UpdateM m) Source # 

Methods

liftBase :: b α -> UpdateM m α #

MonadBaseControl b m => MonadBaseControl b (UpdateM m) Source # 

Associated Types

type StM (UpdateM m :: * -> *) a :: * #

Methods

liftBaseWith :: (RunInBase (UpdateM m) b -> b a) -> UpdateM m a #

restoreM :: StM (UpdateM m) a -> UpdateM m a #

Monad m => Monad (UpdateM m) Source # 

Methods

(>>=) :: UpdateM m a -> (a -> UpdateM m b) -> UpdateM m b #

(>>) :: UpdateM m a -> UpdateM m b -> UpdateM m b #

return :: a -> UpdateM m a #

fail :: String -> UpdateM m a #

Functor m => Functor (UpdateM m) Source # 

Methods

fmap :: (a -> b) -> UpdateM m a -> UpdateM m b #

(<$) :: a -> UpdateM m b -> UpdateM m a #

Applicative m => Applicative (UpdateM m) Source # 

Methods

pure :: a -> UpdateM m a #

(<*>) :: UpdateM m (a -> b) -> UpdateM m a -> UpdateM m b #

liftA2 :: (a -> b -> c) -> UpdateM m a -> UpdateM m b -> UpdateM m c #

(*>) :: UpdateM m a -> UpdateM m b -> UpdateM m b #

(<*) :: UpdateM m a -> UpdateM m b -> UpdateM m a #

MonadPlus m => MonadPlus (UpdateM m) Source # 

Methods

mzero :: UpdateM m a #

mplus :: UpdateM m a -> UpdateM m a -> UpdateM m a #

Alternative m => Alternative (UpdateM m) Source # 

Methods

empty :: UpdateM m a #

(<|>) :: UpdateM m a -> UpdateM m a -> UpdateM m a #

some :: UpdateM m a -> UpdateM m [a] #

many :: UpdateM m a -> UpdateM m [a] #

MonadIO m => MonadIO (UpdateM m) Source # 

Methods

liftIO :: IO a -> UpdateM m a #

MonadThrow m => MonadThrow (UpdateM m) Source # 

Methods

throwM :: Exception e => e -> UpdateM m a #

MonadCatch m => MonadCatch (UpdateM m) Source # 

Methods

catch :: Exception e => UpdateM m a -> (e -> UpdateM m a) -> UpdateM m a #

MonadMask m => MonadMask (UpdateM m) Source # 

Methods

mask :: ((forall a. UpdateM m a -> UpdateM m a) -> UpdateM m b) -> UpdateM m b #

uninterruptibleMask :: ((forall a. UpdateM m a -> UpdateM m a) -> UpdateM m b) -> UpdateM m b #

(MonadIO m, MonadMask m) => MonadLog (UpdateM m) Source # 

Methods

askLog :: UpdateM m Log #

localLog :: (Log -> Log) -> UpdateM m a -> UpdateM m a #

ServerMonadBase m => CommandMonad (UpdateM m) Source # 
ServerMonadBase m => SessionMonad (UpdateM m) Source # 
Monad m => MonadWriter [ModuleLocation] (UpdateM m) Source # 

Methods

writer :: (a, [ModuleLocation]) -> UpdateM m a #

tell :: [ModuleLocation] -> UpdateM m () #

listen :: UpdateM m a -> UpdateM m (a, [ModuleLocation]) #

pass :: UpdateM m (a, [ModuleLocation] -> [ModuleLocation]) -> UpdateM m a #

type StM (UpdateM m) a Source #