use thiserror::Error;
#[derive(Error, Debug)]
pub enum BlincError {
#[error("GPU initialization failed: {0}")]
GpuInit(String),
#[error("Renderer creation failed: {0}")]
RendererCreate(String),
#[error("Rendering failed: {0}")]
Render(String),
#[error("Font loading failed: {0}")]
FontLoad(String),
#[error("SVG parsing failed: {0}")]
SvgParse(String),
#[error("Platform error: {0}")]
Platform(String),
#[error("Platform unsupported: {0}")]
PlatformUnsupported(String),
#[error("{0}")]
Other(String),
}
impl From<anyhow::Error> for BlincError {
fn from(err: anyhow::Error) -> Self {
BlincError::Other(err.to_string())
}
}
pub type Result<T> = std::result::Result<T, BlincError>;