Skip to main content

svod_model/wespeaker/
error.rs

1use snafu::Snafu;
2
3#[derive(Debug, Snafu)]
4#[snafu(visibility(pub))]
5pub enum Error {
6    #[snafu(display("{source}"))]
7    Tensor {
8        #[snafu(source(from(svod_tensor::error::Error, Box::new)))]
9        source: Box<svod_tensor::error::Error>,
10    },
11    #[snafu(display("{source}"))]
12    State {
13        #[snafu(source(from(crate::state::Error, Box::new)))]
14        source: Box<crate::state::Error>,
15    },
16    #[snafu(display("{source}"))]
17    Blocks {
18        #[snafu(source(from(crate::blocks::Error, Box::new)))]
19        source: Box<crate::blocks::Error>,
20    },
21    #[snafu(display("hub error: {source}"))]
22    Hub { source: hf_hub::api::sync::ApiError },
23    #[snafu(display("{source}"))]
24    Pickle {
25        #[snafu(source(from(super::pickle::Error, Box::new)))]
26        source: Box<super::pickle::Error>,
27    },
28}
29
30pub type Result<T> = std::result::Result<T, Error>;
31
32impl From<crate::blocks::Error> for Error {
33    fn from(e: crate::blocks::Error) -> Self {
34        Error::Blocks { source: Box::new(e) }
35    }
36}