#[non_exhaustive]pub enum WasmError {
InvalidWasm(String),
Instantiate(String),
Invoke(String),
Ipc(IpcError),
ResourceLimit(String),
Internal(String),
AbiUnsupported {
requested: String,
supported: Vec<u64>,
},
}Expand description
Errors specific to the WASM loader.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
Non-exhaustive enums could have additional variants added in future. Therefore, when matching against variants of non-exhaustive enums, an extra wildcard arm must be added to account for any future variants.
InvalidWasm(String)
The supplied WASM bytes failed to parse or validate.
Instantiate(String)
Component instantiation failed.
Invoke(String)
A plugin export call trapped or returned a fn-error.
Ipc(IpcError)
Arrow IPC marshalling across the linear-memory boundary failed.
ResourceLimit(String)
Wall-clock or fuel deadline exceeded.
Internal(String)
Internal / unexpected error.
AbiUnsupported
The plugin’s declared ABI range does not intersect any
host-supported major (per the multi-version Linker cache in
crate::multi_version).
Trait Implementations§
Source§impl Error for WasmError
impl Error for WasmError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl PoolResourceLimit for WasmError
impl PoolResourceLimit for WasmError
Source§fn resource_limit(msg: String) -> Self
fn resource_limit(msg: String) -> Self
Construct a “resource limit exceeded” instance from a diagnostic
message. Called when the pool’s
max_instances is reached.Auto Trait Implementations§
impl Freeze for WasmError
impl RefUnwindSafe for WasmError
impl Send for WasmError
impl Sync for WasmError
impl Unpin for WasmError
impl UnsafeUnpin for WasmError
impl UnwindSafe for WasmError
Blanket Implementations§
impl<T> Allocation for T
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more