pub mod command;
pub mod diagnostic;
pub mod env;
pub mod error;
pub mod version;
pub use command::{CommandOutput, CommandRunner};
pub use diagnostic::{
DiagnosticReport, DiagnosticSeverity, GhcDiagnostic, QuickFix, SourceSpan, TextEdit,
};
pub use env::EnvVars;
pub use error::{Error, ErrorCode, Fix, Result};
pub use version::Version;
#[derive(Debug, Clone, Copy, PartialEq, Eq)]
#[repr(u8)]
pub enum ExitCode {
Success = 0,
GeneralError = 1,
UsageError = 2,
ConfigError = 3,
ToolchainError = 4,
BuildError = 5,
}
impl From<ExitCode> for i32 {
fn from(code: ExitCode) -> Self {
code as i32
}
}
impl From<ExitCode> for std::process::ExitCode {
fn from(code: ExitCode) -> Self {
std::process::ExitCode::from(code as u8)
}
}