//! This crate contains the type definitions that are used to communicate between:
//! - the command line (the `cargo-hax` binary);
//! - the custom rustc driver;
//! - the hax engine (the `hax-engine` binary).
//!
//! Those three component send and receive messages in JSON or CBOR on
//! stdin and stdout.
pub
/// The CLI options for `cargo-hax`. The types defines in this module
/// are also used by the driver and the engine.
/// Type to represent errors, mainly in `hax-engine`. The engine
/// doesn't do any reporting itself: it only sends JSON to its stdout,
/// and `cargo-hax` takes care of reporting everything in a rustc
/// style.
/// The types used to communicate between `cargo-hax` and the custom
/// driver.
/// The types used to communicate between `cargo-hax` and
/// `hax-engine`.
/// Compile-time version of hax
pub const HAX_VERSION: &str = env!;