Skip to main content

llama_gguf/backend/
error.rs

1use crate::tensor::DType;
2
3#[derive(thiserror::Error, Debug)]
4pub enum BackendError {
5    #[error("Backend not available: {0}")]
6    NotAvailable(String),
7
8    #[error("Shape mismatch: expected {expected:?}, got {got:?}")]
9    ShapeMismatch {
10        expected: Vec<usize>,
11        got: Vec<usize>,
12    },
13
14    #[error("DType mismatch: expected {expected:?}, got {got:?}")]
15    DTypeMismatch { expected: DType, got: DType },
16
17    #[error("Unsupported dtype: {0:?}")]
18    UnsupportedDType(DType),
19
20    #[error("Operation not supported: {0}")]
21    Unsupported(String),
22
23    #[error("Invalid argument: {0}")]
24    InvalidArgument(String),
25
26    #[error("Tensor error: {0}")]
27    Tensor(#[from] crate::tensor::TensorError),
28
29    #[error("Initialization failed: {0}")]
30    InitializationFailed(String),
31
32    #[error("Allocation failed: {0}")]
33    AllocationFailed(String),
34
35    #[error("Operation failed: {0}")]
36    OperationFailed(String),
37}