pub enum LoadError {
EmptyFilterId,
FilterIdContainsDelimiter,
MissingSbom,
UnverifiedComponentSignature,
UnverifiedSbomSignature,
MalformedSbom(Error),
SbomNotBound,
UnsupportedContractVersion,
Instantiate(Error),
Wasmtime(Error),
}Expand description
Why [Host::load] rejected a filter (bp-rust: typed library errors, not ad hoc
anyhow::ensure!). Every variant is a fail-closed rejection at the provenance/id gate, before
wasmtime ever touches the component bytes — except LoadError::Instantiate /
LoadError::Wasmtime, which surface a failure from wasmtime itself (linking / type-checking
/ the eager trusted-instance build). Host::load’s public signature stays anyhow::Result
(unchanged, so plecto-control::ControlError::Load’s existing anyhow::Error passthrough
keeps working); callers that want the concrete variant can downcast_ref::<LoadError>().
Variants§
EmptyFilterId
FilterIdContainsDelimiter
MissingSbom
UnverifiedComponentSignature
UnverifiedSbomSignature
MalformedSbom(Error)
SbomNotBound
UnsupportedContractVersion
The component’s decoded imports name no recognised plecto:filter@0.N track (absent, or
a future version the host does not yet bind). Fail-closed at load — never guess V03.
Instantiate(Error)
The eager trusted-instance build (Host::load’s Isolation::Trusted path) failed —
carries the same error RunError::Instantiate would for a later rebuild.
Wasmtime(Error)
Trait Implementations§
Source§impl Error for LoadError
impl Error for LoadError
Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
use the Display impl or to_string()
Auto Trait Implementations§
impl !RefUnwindSafe for LoadError
impl !UnwindSafe for LoadError
impl Freeze for LoadError
impl Send for LoadError
impl Sync for LoadError
impl Unpin for LoadError
impl UnsafeUnpin for LoadError
Blanket Implementations§
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
Source§impl<T> FutureExt for T
impl<T> FutureExt for T
Source§fn with_context(self, otel_cx: Context) -> WithContext<Self>
fn with_context(self, otel_cx: Context) -> WithContext<Self>
Source§fn with_current_context(self) -> WithContext<Self>
fn with_current_context(self) -> WithContext<Self>
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>
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>
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