Potentially fatal diagnostics and diagnostic handling for compilers.
Usage
Examples
See the examples directory for some examples of how to use this crate.
Relationship to Other Crates
This crate can be thought of as a high-level wrapper around the ariadne crate, as its core functionality is driven by it. It is also kind of a spiritual successor to the rich-err crate I wrote, but to be honest, I totally forgot that existed until I went to publish this one.
There is also the ariadnenum crate, which fulfills a similar purpose to the maybe-fatal-derive crate in this repository. The primary difference is that maybe-fatal-derive was designed specifically for use in the context of this crate, whereas ariadnenum is meant for a workflow that is already using ariadne directly.
One other crate worth mentioning is wurm, which was similarly made for non-fatal error handling. I
considered using that crate here, but it made more sense with how I had designed the Diagnostic
type to just make my own stuff. Functionality relating to that can be found in the sink module.
Prerelease Status
This is currently marked as being in beta, as I am still working on making sure the API is as ergonomic and flexible as possible. I would also like to add some more detailed documentation, unit tests, integration tests, and examples.