use thiserror::Error; #[derive(Error, Debug)] pub enum ShaderCompileError { #[error("shader")] NagaCompileError(Vec), #[error("shaderc")] ShaderCCompileError(#[from] shaderc::Error), #[error("shaderc init")] ShaderCInitError, } #[derive(Error, Debug)] pub enum ShaderReflectError { #[error("shader")] NagaCompileError(#[from] naga::front::spv::Error), #[error("spirv")] SpirvCrossError(#[from] spirv_cross::ErrorCode), } impl From> for ShaderCompileError { fn from(err: Vec) -> Self { ShaderCompileError::NagaCompileError(err) } }