use fervid_parser::ParseError as SfcParseError;
use fervid_transform::error::TransformError;
use swc_core::common::Spanned;
#[derive(Debug)]
pub enum CompileError {
SfcParse(SfcParseError),
TransformError(TransformError)
}
impl std::fmt::Display for CompileError {
fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
write!(f, "{:?}", self)
}
}
impl From<SfcParseError> for CompileError {
fn from(value: SfcParseError) -> Self {
Self::SfcParse(value)
}
}
impl From<TransformError> for CompileError {
fn from(value: TransformError) -> Self {
Self::TransformError(value)
}
}
impl Spanned for CompileError {
fn span(&self) -> swc_core::common::Span {
match self {
CompileError::SfcParse(e) => e.span,
CompileError::TransformError(e) => e.span
}
}
}