|
|
|
|
|
Description |
AptIO is an instance of the RWS monad used to manage the global
state and output style parameters of clients of the Apt library,
such as the autobuilder.
|
|
Synopsis |
|
|
|
Documentation |
|
|
A new monad to support the IO requirements of the autobuilder.
This uses the RWS monad. The reader monad is used to store a flag
indicating whether this is a dry run, and the style information
associated with each output handle, including indentation, prefixing,
and replacing the output with one dot per n output characters.
The state monad stores information used to implement the current
output style and includes state information about whether the console
is at the beginning of a line, per-handle state information, and a
cache of the repositories that have been verified.
|
|
AptIO Monad
|
|
|
mark an action that should be run in the regular IO monad
|
|
|
mark an action that should be run in the terminal IO monad
|
|
|
Perform an AptIO monad task in the IO monad.
|
|
|
Implementation of try for the AptIO monad. If the task throws
an exception the initial state will be restored.
|
|
State
|
|
|
This represents the state of the IO system. The bol flag keeps
track of whether we are at the beginning of line on the console.
This is computed in terms of what we have sent to the console, but
it should be remembered that the order that stdout and stderr are
sent to the console may not be the same as the order in which they
show up there. However, this appears to server our purposes for
now.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Perform a list of tasks with log messages.
|
|
Produced by Haddock version 2.4.2 |