Safe Haskell | None |
---|---|
Language | Haskell2010 |
The monad used for the command-line executable stack
.
- data StackT config m a
- type HasEnv r = (HasLogOptions r, HasTerminal r, HasReExec r, HasSticky r)
- type StackM r m = (MonadReader r m, MonadIO m, MonadBaseControl IO m, MonadLoggerIO m, MonadMask m, HasEnv r)
- runStackT :: MonadIO m => config -> LogLevel -> Bool -> Bool -> ColorWhen -> Bool -> StackT config m a -> m a
- runStackTGlobal :: MonadIO m => config -> GlobalOpts -> StackT config m a -> m a
- runInnerStackT :: (HasEnv r, MonadReader r m, MonadIO m) => config -> StackT config IO a -> m a
- logSticky :: Q Exp
- logStickyDone :: Q Exp
Documentation
The monad used for the executable stack
.
MonadBaseControl b m => MonadBaseControl b (StackT config m) Source | |
MonadBase b m => MonadBase b (StackT config m) Source | |
MonadTrans (StackT config) Source | |
MonadTransControl (StackT config) Source | |
Monad m => MonadReader (Env config) (StackT config m) Source | |
Monad m => Monad (StackT config m) Source | |
Functor m => Functor (StackT config m) Source | |
Applicative m => Applicative (StackT config m) Source | |
MonadThrow m => MonadThrow (StackT config m) Source | |
MonadCatch m => MonadCatch (StackT config m) Source | |
MonadMask m => MonadMask (StackT config m) Source | |
MonadIO m => MonadIO (StackT config m) Source | |
MonadIO m => MonadLogger (StackT config m) Source | Takes the configured log level into account. |
MonadIO m => MonadLoggerIO (StackT config m) Source | |
type StT (StackT config) a = StT (ReaderT (Env config)) a Source | |
type StM (StackT config m) a = ComposeSt (StackT config) m a Source |
type HasEnv r = (HasLogOptions r, HasTerminal r, HasReExec r, HasSticky r) Source
Constraint synonym for all of the common environment instances
type StackM r m = (MonadReader r m, MonadIO m, MonadBaseControl IO m, MonadLoggerIO m, MonadMask m, HasEnv r) Source
Constraint synonym for constraints commonly satisifed by monads used in stack.
runStackT :: MonadIO m => config -> LogLevel -> Bool -> Bool -> ColorWhen -> Bool -> StackT config m a -> m a Source
runStackTGlobal :: MonadIO m => config -> GlobalOpts -> StackT config m a -> m a Source
Run a Stack action, using global options.
runInnerStackT :: (HasEnv r, MonadReader r m, MonadIO m) => config -> StackT config IO a -> m a Source
Write a "sticky" line to the terminal. Any subsequent lines will
overwrite this one, and that same line will be repeated below
again. In other words, the line sticks at the bottom of the output
forever. Running this function again will replace the sticky line
with a new sticky line. When you want to get rid of the sticky
line, run logStickyDone
.
logStickyDone :: Q Exp Source
This will print out the given message with a newline and disable
any further stickiness of the line until a new call to logSticky
happens.
It might be better at some point to have a runSticky
function
that encompasses the logSticky->logStickyDone pairing.