1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50
use snafu::Snafu; #[derive(Debug, Snafu)] #[snafu(visibility = "pub")] pub enum Error { #[snafu(display("Received null pointer, refuse to use"))] NullPointer { #[cfg(feature = "backtraces")] backtrace: snafu::Backtrace, }, #[snafu(display("Error parsing {}: {}", kind, source))] ParseErr { source: serde_json_wasm::de::Error, kind: &'static str, #[cfg(feature = "backtraces")] backtrace: snafu::Backtrace, }, #[snafu(display("Error serializing {}: {}", kind, source))] SerializeErr { source: serde_json_wasm::ser::Error, kind: &'static str, #[cfg(feature = "backtraces")] backtrace: snafu::Backtrace, }, #[snafu(display("Contract error: {}", msg))] ContractErr { msg: &'static str, #[cfg(feature = "backtraces")] backtrace: snafu::Backtrace, }, #[snafu(display("Contract error: {}", msg))] DynContractErr { msg: String, #[cfg(feature = "backtraces")] backtrace: snafu::Backtrace, }, #[snafu(display("UTF8 encoding error: {}", source))] Utf8Err { source: std::str::Utf8Error, #[cfg(feature = "backtraces")] backtrace: snafu::Backtrace, }, #[snafu(display("Unauthorized"))] Unauthorized { #[cfg(feature = "backtraces")] backtrace: snafu::Backtrace, }, } pub type Result<T, E = Error> = core::result::Result<T, E>;