use crate::{BuildDiagnostic, SingleBuildResult};
use std::error::Error as StdError;
pub trait ResultExt<Val> {
fn map_err_to_unhandleable(self) -> SingleBuildResult<Val>;
}
impl<Val, Err_> ResultExt<Val> for Result<Val, Err_>
where
Err_: StdError + Send + Sync + 'static,
{
fn map_err_to_unhandleable(self) -> SingleBuildResult<Val> {
self.map_err(|err| {
let err = anyhow::Error::new(err);
BuildDiagnostic::unhandleable_error(err)
})
}
}