Expand description
ghciwatch is a ghci-based file watcher and recompiler for Haskell projects, leveraging
Haskell’s interpreted mode for faster reloads.
ghciwatch watches your modules for changes and reloads them in a ghci session, displaying
any errors.
Note that the ghciwatch Rust library is a convenience and shouldn’t be depended on. I do not
consider this to be a public/stable API and will make breaking changes here in minor version
bumps. If you’d like a stable ghciwatch Rust API for some reason, let me know and we can maybe
work something out.
Modules§
- clap_
markdown - Autogenerate Markdown documentation for clap command-line tools
- cli
- Command-line argument parser and argument access.
Structs§
- Ghci
- A
ghcisession. - Ghci
Opts - Options for constructing a
Ghci. This is like a lower-effort builder interface, mostly provided because Rust tragically lacks named arguments. - Ghci
Writer - A dynamically reconfigurable sink for
ghciprocess output. Built for use inGhciOpts, but usable as a general purpose clonableAsyncWriter. - Shutdown
Error - A shutdown was requested.
- Shutdown
Handle - A handle to the shutdown system.
- Shutdown
Manager - A manager for shutting down the program gracefully.
- Tracing
Opts - Options for initializing the
tracinglogging framework. This is like a lower-effort builder interface, mostly provided because Rust tragically lacks named arguments. - Watcher
Opts - Options for
run_watcher. This is like a lower-effort builder interface, mostly provided because Rust tragically lacks named arguments.
Functions§
- run_
ghci - Start the
Ghcisubsystem. - run_tui
- Start the terminal event loop, reading output from the given readers.
- run_
watcher - A
notifywatcher which waits for file changes and sends reload events to the containedghcisession.