#[non_exhaustive]pub enum PluginError {
Show 25 variants
NotFound,
DuplicateId,
InUse,
InvalidConfig(String),
IncompatibleApiVersion {
expected: String,
actual: String,
},
Disabled,
Cancelled,
WallTimeExceeded,
RequestTimeout,
RequestAbandoned,
InputBudgetExceeded {
actual: usize,
maximum: usize,
},
RequestBudgetExceeded,
ResponseBodyBudgetExceeded {
actual: u64,
maximum: u64,
},
ResponseBodyBudgetUnavailable,
CumulativeBodyBudgetExceeded,
ObservationBudgetExceeded,
ObservationBytesBudgetExceeded,
ScopeViolation,
BrokerFailure(String),
ExecutionFailed(String),
Panicked,
HostCallbackPanicked,
ContextSealed,
ClockBeforeUnixEpoch,
HostStateUnavailable,
}Expand description
Typed plugin-boundary failures.
Variants (Non-exhaustive)§
This enum is marked as non-exhaustive
NotFound
Plugin identity was not registered.
DuplicateId
Plugin identity is already registered.
InUse
Plugin identity has an invocation in flight and cannot be removed.
InvalidConfig(String)
Plugin descriptor, configuration, or request was invalid.
IncompatibleApiVersion
Plugin targets another Preview API line.
Disabled
Host configuration disabled this plugin.
Cancelled
Host cancelled the invocation.
WallTimeExceeded
The invocation crossed its wall-clock budget.
RequestTimeout
One request crossed its timeout budget.
RequestAbandoned
Plugin code abandoned a polled request before the broker returned.
InputBudgetExceeded
Input exceeded the immutable request budget.
RequestBudgetExceeded
Request dispatch count exceeded the immutable budget.
ResponseBodyBudgetExceeded
One response exceeded its delivered-body budget.
The per-response budget grants no body-capture authority.
CumulativeBodyBudgetExceeded
Invocation-wide delivered response bytes exceeded the budget.
ObservationBudgetExceeded
Observation count exceeded the immutable budget.
ObservationBytesBudgetExceeded
Observation text exceeded the immutable byte budget.
ScopeViolation
A URL was outside the exact authorized HTTP(S) origin.
BrokerFailure(String)
The host-owned broker rejected or failed a request.
ExecutionFailed(String)
Plugin logic returned a failure.
Panicked
Plugin code panicked in a registration callback or while executing.
HostCallbackPanicked
A host-supplied plugin policy callback panicked.
ContextSealed
Observation or request authority was already sealed.
ClockBeforeUnixEpoch
System time was earlier than the Unix epoch.
Internal synchronized state was poisoned.
Trait Implementations§
Source§impl Clone for PluginError
impl Clone for PluginError
Source§fn clone(&self) -> PluginError
fn clone(&self) -> PluginError
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for PluginError
impl Debug for PluginError
Source§impl Display for PluginError
impl Display for PluginError
impl Eq for PluginError
Source§impl Error for PluginError
impl Error for PluginError
1.30.0 · 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()
Source§impl PartialEq for PluginError
impl PartialEq for PluginError
impl StructuralPartialEq for PluginError
Auto Trait Implementations§
impl Freeze for PluginError
impl RefUnwindSafe for PluginError
impl Send for PluginError
impl Sync for PluginError
impl Unpin for PluginError
impl UnsafeUnpin for PluginError
impl UnwindSafe for PluginError
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.