pub struct Bug {
pub operation: &'static str,
pub message: String,
pub location: Option<SourceLocation>,
pub kind: BugKind,
}Expand description
Work that panicked: a bug in it, not a failure its caller can act on (E15). The caller reports it wherever it reports its own bugs, and the call that ran the work returns it as its error.
Fields§
§operation: &'static strWhat the work was doing, as its caller named it.
message: StringThe text the panic carried (panic_message).
location: Option<SourceLocation>Where the bug showed itself: where the panic began, or where the code
that found the bug made it (Bug::new). None for a panic no catch
of coven’s saw begin: one that reached a join uncaught
(TaskFailed::of_join), or one resumed with
std::panic::resume_unwind from a panic elsewhere.
kind: BugKindWhether the bug showed itself as a panic or code found it.
Implementations§
Trait Implementations§
Source§impl CarriesBug for Bug
impl CarriesBug for Bug
Source§impl Error for Bug
impl Error for Bug
1.30.0 · 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 From<Bug> for BootstrapDirectoryError
impl From<Bug> for BootstrapDirectoryError
Source§fn from(source: Bug) -> BootstrapDirectoryError
fn from(source: Bug) -> BootstrapDirectoryError
Converts to this type from the input type.
Source§impl From<Bug> for BootstrapError
impl From<Bug> for BootstrapError
Source§impl From<Bug> for CopyPathError
impl From<Bug> for CopyPathError
Source§fn from(source: Bug) -> CopyPathError
fn from(source: Bug) -> CopyPathError
Converts to this type from the input type.
Source§impl From<Bug> for CovenError
impl From<Bug> for CovenError
Source§impl From<Bug> for DeviceOnlyError
impl From<Bug> for DeviceOnlyError
Source§fn from(source: Bug) -> DeviceOnlyError
fn from(source: Bug) -> DeviceOnlyError
Converts to this type from the input type.
Source§impl From<Bug> for FileReadError
impl From<Bug> for FileReadError
Source§fn from(source: Bug) -> FileReadError
fn from(source: Bug) -> FileReadError
Converts to this type from the input type.
Source§impl From<Bug> for IdentityError
impl From<Bug> for IdentityError
Source§fn from(source: Bug) -> IdentityError
fn from(source: Bug) -> IdentityError
Converts to this type from the input type.
Source§impl From<Bug> for ReadOnlyOpenError
impl From<Bug> for ReadOnlyOpenError
Source§impl From<Bug> for SettingsError
impl From<Bug> for SettingsError
Source§fn from(source: Bug) -> SettingsError
fn from(source: Bug) -> SettingsError
Converts to this type from the input type.
Source§impl From<Bug> for StorageError
impl From<Bug> for StorageError
Source§fn from(source: Bug) -> StorageError
fn from(source: Bug) -> StorageError
Converts to this type from the input type.
Source§impl From<Bug> for StorageSetupError
impl From<Bug> for StorageSetupError
Source§impl From<Bug> for StoreCreationError
impl From<Bug> for StoreCreationError
Source§impl From<Bug> for StoreDeletionError
impl From<Bug> for StoreDeletionError
Source§impl From<Bug> for StoreKeyUnlockError
impl From<Bug> for StoreKeyUnlockError
Source§impl From<Bug> for StoreListError
impl From<Bug> for StoreListError
Source§impl From<Bug> for StoreLockError
impl From<Bug> for StoreLockError
Source§fn from(source: Bug) -> StoreLockError
fn from(source: Bug) -> StoreLockError
Converts to this type from the input type.
impl Eq for Bug
impl StructuralPartialEq for Bug
Auto Trait Implementations§
impl Freeze for Bug
impl RefUnwindSafe for Bug
impl Send for Bug
impl Sync for Bug
impl Unpin for Bug
impl UnsafeUnpin for Bug
impl UnwindSafe for Bug
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
Mutably borrows from an owned value. Read more
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
Checks if this value is equivalent to the given key. Read more
§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
Compare self to
key and return true if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§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 moreCreates a shared type from an unshared type.