summaryrefslogtreecommitdiffstats
path: root/third_party/rust/lucet-module-wasmsbx/src/error.rs
blob: a19ec8a334253b795ca879f9071b76a686d76be7 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
use failure::Fail;

/// Module data (de)serialization errors.
#[derive(Debug, Fail)]
pub enum Error {
    #[fail(display = "Sparse data contained a page with length other than 4096")]
    IncorrectPageSize,
    #[fail(display = "Deserialization error: {}", _0)]
    DeserializationError(#[cause] bincode::Error),
    #[fail(display = "Serialization error: {}", _0)]
    SerializationError(#[cause] bincode::Error),
    #[cfg(feature = "signature_checking")]
    #[fail(display = "Module signature error: {}", _0)]
    ModuleSignatureError(#[cause] minisign::PError),
    #[fail(display = "I/O error: {}", _0)]
    IOError(#[cause] std::io::Error),
}