1#[derive(Debug, thiserror::Error)]
3pub enum Error {
4 #[error("wasm initialization failed: {0}")]
6 WasmInit(String),
7
8 #[error("execution exceeded fuel budget ({budget} fuel units)")]
10 FuelExhausted { budget: u64 },
11
12 #[error("execution exceeded {timeout_ms}ms timeout")]
14 Timeout { timeout_ms: u64 },
15
16 #[error("linear memory exceeded {limit_bytes} byte limit")]
18 MemoryExceeded { limit_bytes: usize },
19
20 #[error("bridge error in {api}: {message}")]
22 Bridge { api: String, message: String },
23
24 #[error("wasm trap: {0}")]
26 Trap(String),
27
28 #[error("internal: {0}")]
30 Internal(String),
31}
32
33pub type Result<T> = std::result::Result<T, Error>;