Trait geng::prelude::serde::ser::StdError

1.0.0 · source ·
pub trait StdError: Debug + Display {
    // Provided methods
    fn source(&self) -> Option<&(dyn Error + 'static)> { ... }
    fn description(&self) -> &str { ... }
    fn cause(&self) -> Option<&dyn Error> { ... }
    fn provide<'a>(&'a self, request: &mut Request<'a>) { ... }
}
Expand description

Error is a trait representing the basic expectations for error values, i.e., values of type E in Result<T, E>.

Errors must describe themselves through the Display and Debug traits. Error messages are typically concise lowercase sentences without trailing punctuation:

let err = "NaN".parse::<u32>().unwrap_err();
assert_eq!(err.to_string(), "invalid digit found in string");

Errors may provide cause information. Error::source() is generally used when errors cross “abstraction boundaries”. If one module must report an error that is caused by an error from a lower-level module, it can allow accessing that error via Error::source(). This makes it possible for the high-level module to provide its own errors while also revealing some of the implementation for debugging.

Provided Methods§

1.30.0 · source

fn source(&self) -> Option<&(dyn Error + 'static)>

The lower-level source of this error, if any.

§Examples
use std::error::Error;
use std::fmt;

#[derive(Debug)]
struct SuperError {
    source: SuperErrorSideKick,
}

impl fmt::Display for SuperError {
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
        write!(f, "SuperError is here!")
    }
}

impl Error for SuperError {
    fn source(&self) -> Option<&(dyn Error + 'static)> {
        Some(&self.source)
    }
}

#[derive(Debug)]
struct SuperErrorSideKick;

impl fmt::Display for SuperErrorSideKick {
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
        write!(f, "SuperErrorSideKick is here!")
    }
}

impl Error for SuperErrorSideKick {}

fn get_super_error() -> Result<(), SuperError> {
    Err(SuperError { source: SuperErrorSideKick })
}

fn main() {
    match get_super_error() {
        Err(e) => {
            println!("Error: {e}");
            println!("Caused by: {}", e.source().unwrap());
        }
        _ => println!("No error"),
    }
}
source

fn description(&self) -> &str

👎Deprecated since 1.42.0: use the Display impl or to_string()
if let Err(e) = "xc".parse::<u32>() {
    // Print `e` itself, no need for description().
    eprintln!("Error: {e}");
}
source

fn cause(&self) -> Option<&dyn Error>

👎Deprecated since 1.33.0: replaced by Error::source, which can support downcasting
source

fn provide<'a>(&'a self, request: &mut Request<'a>)

🔬This is a nightly-only experimental API. (error_generic_member_access)

Provides type based access to context intended for error reports.

Used in conjunction with Request::provide_value and Request::provide_ref to extract references to member variables from dyn Error trait objects.

§Example
#![feature(error_generic_member_access)]
#![feature(error_in_core)]
use core::fmt;
use core::error::{request_ref, Request};

#[derive(Debug)]
enum MyLittleTeaPot {
    Empty,
}

#[derive(Debug)]
struct MyBacktrace {
    // ...
}

impl MyBacktrace {
    fn new() -> MyBacktrace {
        // ...
    }
}

#[derive(Debug)]
struct Error {
    backtrace: MyBacktrace,
}

impl fmt::Display for Error {
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
        write!(f, "Example Error")
    }
}

impl std::error::Error for Error {
    fn provide<'a>(&'a self, request: &mut Request<'a>) {
        request
            .provide_ref::<MyBacktrace>(&self.backtrace);
    }
}

fn main() {
    let backtrace = MyBacktrace::new();
    let error = Error { backtrace };
    let dyn_error = &error as &dyn std::error::Error;
    let backtrace_ref = request_ref::<MyBacktrace>(dyn_error).unwrap();

    assert!(core::ptr::eq(&error.backtrace, backtrace_ref));
    assert!(request_ref::<MyLittleTeaPot>(dyn_error).is_none());
}

Implementations§

source§

impl dyn Error

1.3.0 · source

pub fn is<T>(&self) -> bool
where T: Error + 'static,

Returns true if the inner type is the same as T.

1.3.0 · source

pub fn downcast_ref<T>(&self) -> Option<&T>
where T: Error + 'static,

Returns some reference to the inner value if it is of type T, or None if it isn’t.

1.3.0 · source

pub fn downcast_mut<T>(&mut self) -> Option<&mut T>
where T: Error + 'static,

Returns some mutable reference to the inner value if it is of type T, or None if it isn’t.

source§

impl dyn Error + Send

1.3.0 · source

pub fn is<T>(&self) -> bool
where T: Error + 'static,

Forwards to the method defined on the type dyn Error.

1.3.0 · source

pub fn downcast_ref<T>(&self) -> Option<&T>
where T: Error + 'static,

Forwards to the method defined on the type dyn Error.

1.3.0 · source

pub fn downcast_mut<T>(&mut self) -> Option<&mut T>
where T: Error + 'static,

Forwards to the method defined on the type dyn Error.

source§

impl dyn Error + Send + Sync

1.3.0 · source

pub fn is<T>(&self) -> bool
where T: Error + 'static,

Forwards to the method defined on the type dyn Error.

1.3.0 · source

pub fn downcast_ref<T>(&self) -> Option<&T>
where T: Error + 'static,

Forwards to the method defined on the type dyn Error.

1.3.0 · source

pub fn downcast_mut<T>(&mut self) -> Option<&mut T>
where T: Error + 'static,

Forwards to the method defined on the type dyn Error.

source§

impl dyn Error

source

pub fn sources(&self) -> Source<'_>

🔬This is a nightly-only experimental API. (error_iter)

Returns an iterator starting with the current error and continuing with recursively calling Error::source.

If you want to omit the current error and only use its sources, use skip(1).

§Examples
#![feature(error_iter)]
use std::error::Error;
use std::fmt;

#[derive(Debug)]
struct A;

#[derive(Debug)]
struct B(Option<Box<dyn Error + 'static>>);

impl fmt::Display for A {
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
        write!(f, "A")
    }
}

impl fmt::Display for B {
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
        write!(f, "B")
    }
}

impl Error for A {}

impl Error for B {
    fn source(&self) -> Option<&(dyn Error + 'static)> {
        self.0.as_ref().map(|e| e.as_ref())
    }
}

let b = B(Some(Box::new(A)));

// let err : Box<Error> = b.into(); // or
let err = &b as &(dyn Error);

let mut iter = err.sources();

assert_eq!("B".to_string(), iter.next().unwrap().to_string());
assert_eq!("A".to_string(), iter.next().unwrap().to_string());
assert!(iter.next().is_none());
assert!(iter.next().is_none());
source§

impl dyn Error + Send

1.3.0 · source

pub fn downcast<T>( self: Box<dyn Error + Send> ) -> Result<Box<T>, Box<dyn Error + Send>>
where T: Error + 'static,

Attempts to downcast the box to a concrete type.

source§

impl dyn Error

1.3.0 · source

pub fn downcast<T>(self: Box<dyn Error>) -> Result<Box<T>, Box<dyn Error>>
where T: Error + 'static,

Attempts to downcast the box to a concrete type.

source§

impl dyn Error + Send + Sync

1.3.0 · source

pub fn downcast<T>( self: Box<dyn Error + Send + Sync> ) -> Result<Box<T>, Box<dyn Error + Send + Sync>>
where T: Error + 'static,

Attempts to downcast the box to a concrete type.

Trait Implementations§

source§

impl AsRef<dyn Error> for Error

source§

fn as_ref(&self) -> &(dyn Error + 'static)

Converts this type into a shared reference of the (usually inferred) input type.
source§

impl AsRef<dyn Error + Send + Sync> for Error

source§

fn as_ref(&self) -> &(dyn Error + Send + Sync + 'static)

Converts this type into a shared reference of the (usually inferred) input type.
1.6.0 · source§

impl From<&str> for Box<dyn Error>

source§

fn from(err: &str) -> Box<dyn Error>

Converts a str into a box of dyn Error.

§Examples
use std::error::Error;
use std::mem;

let a_str_error = "a str error";
let a_boxed_error = Box::<dyn Error>::from(a_str_error);
assert!(mem::size_of::<Box<dyn Error>>() == mem::size_of_val(&a_boxed_error))
source§

impl<'a> From<&str> for Box<dyn Error + Send + Sync + 'a>

source§

fn from(err: &str) -> Box<dyn Error + Send + Sync + 'a>

Converts a str into a box of dyn Error + Send + Sync.

§Examples
use std::error::Error;
use std::mem;

let a_str_error = "a str error";
let a_boxed_error = Box::<dyn Error + Send + Sync>::from(a_str_error);
assert!(
    mem::size_of::<Box<dyn Error + Send + Sync>>() == mem::size_of_val(&a_boxed_error))
1.22.0 · source§

impl<'a> From<Cow<'a, str>> for Box<dyn Error>

source§

fn from(err: Cow<'a, str>) -> Box<dyn Error>

Converts a Cow into a box of dyn Error.

§Examples
use std::error::Error;
use std::mem;
use std::borrow::Cow;

let a_cow_str_error = Cow::from("a str error");
let a_boxed_error = Box::<dyn Error>::from(a_cow_str_error);
assert!(mem::size_of::<Box<dyn Error>>() == mem::size_of_val(&a_boxed_error))
1.22.0 · source§

impl<'a, 'b> From<Cow<'b, str>> for Box<dyn Error + Send + Sync + 'a>

source§

fn from(err: Cow<'b, str>) -> Box<dyn Error + Send + Sync + 'a>

Converts a Cow into a box of dyn Error + Send + Sync.

§Examples
use std::error::Error;
use std::mem;
use std::borrow::Cow;

let a_cow_str_error = Cow::from("a str error");
let a_boxed_error = Box::<dyn Error + Send + Sync>::from(a_cow_str_error);
assert!(
    mem::size_of::<Box<dyn Error + Send + Sync>>() == mem::size_of_val(&a_boxed_error))
source§

impl<'a, E> From<E> for Box<dyn Error + 'a>
where E: Error + 'a,

source§

fn from(err: E) -> Box<dyn Error + 'a>

Converts a type of Error into a box of dyn Error.

§Examples
use std::error::Error;
use std::fmt;
use std::mem;

#[derive(Debug)]
struct AnError;

impl fmt::Display for AnError {
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
        write!(f, "An error")
    }
}

impl Error for AnError {}

let an_error = AnError;
assert!(0 == mem::size_of_val(&an_error));
let a_boxed_error = Box::<dyn Error>::from(an_error);
assert!(mem::size_of::<Box<dyn Error>>() == mem::size_of_val(&a_boxed_error))
source§

impl<'a, E> From<E> for Box<dyn Error + Send + Sync + 'a>
where E: Error + Send + Sync + 'a,

source§

fn from(err: E) -> Box<dyn Error + Send + Sync + 'a>

Converts a type of Error + Send + Sync into a box of dyn Error + Send + Sync.

§Examples
use std::error::Error;
use std::fmt;
use std::mem;

#[derive(Debug)]
struct AnError;

impl fmt::Display for AnError {
    fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
        write!(f, "An error")
    }
}

impl Error for AnError {}

unsafe impl Send for AnError {}

unsafe impl Sync for AnError {}

let an_error = AnError;
assert!(0 == mem::size_of_val(&an_error));
let a_boxed_error = Box::<dyn Error + Send + Sync>::from(an_error);
assert!(
    mem::size_of::<Box<dyn Error + Send + Sync>>() == mem::size_of_val(&a_boxed_error))
source§

impl From<Error> for Box<dyn Error>

source§

fn from(error: Error) -> Box<dyn Error>

Converts to this type from the input type.
source§

impl From<Error> for Box<dyn Error + Send>

source§

fn from(error: Error) -> Box<dyn Error + Send>

Converts to this type from the input type.
source§

impl From<Error> for Box<dyn Error + Send + Sync>

source§

fn from(error: Error) -> Box<dyn Error + Send + Sync>

Converts to this type from the input type.
1.6.0 · source§

impl From<String> for Box<dyn Error>

source§

fn from(str_err: String) -> Box<dyn Error>

Converts a String into a box of dyn Error.

§Examples
use std::error::Error;
use std::mem;

let a_string_error = "a string error".to_string();
let a_boxed_error = Box::<dyn Error>::from(a_string_error);
assert!(mem::size_of::<Box<dyn Error>>() == mem::size_of_val(&a_boxed_error))
source§

impl From<String> for Box<dyn Error + Send + Sync>

source§

fn from(err: String) -> Box<dyn Error + Send + Sync>

Converts a String into a box of dyn Error + Send + Sync.

§Examples
use std::error::Error;
use std::mem;

let a_string_error = "a string error".to_string();
let a_boxed_error = Box::<dyn Error + Send + Sync>::from(a_string_error);
assert!(
    mem::size_of::<Box<dyn Error + Send + Sync>>() == mem::size_of_val(&a_boxed_error))
§

impl Value for dyn Error

§

fn record(&self, key: &Field, visitor: &mut dyn Visit)

Visits this value with the given Visitor.
§

impl Value for dyn Error + Send

§

fn record(&self, key: &Field, visitor: &mut dyn Visit)

Visits this value with the given Visitor.
§

impl Value for dyn Error + Send + Sync

§

fn record(&self, key: &Field, visitor: &mut dyn Visit)

Visits this value with the given Visitor.
§

impl Value for dyn Error + Sync

§

fn record(&self, key: &Field, visitor: &mut dyn Visit)

Visits this value with the given Visitor.

Implementors§

source§

impl !Error for &str

source§

impl Error for geng::prelude::bincode::ErrorKind

§

impl Error for MatchesError

source§

impl Error for geng::prelude::rand::distributions::BernoulliError

source§

impl Error for geng::prelude::rand::distributions::WeightedError

source§

impl Error for geng::prelude::ron::Error

1.8.0 · source§

impl Error for Infallible

source§

impl Error for VarError

1.15.0 · source§

impl Error for std::sync::mpsc::RecvTimeoutError

source§

impl Error for std::sync::mpsc::TryRecvError

source§

impl Error for DistanceModelError

source§

impl Error for gilrs::ff::Error

source§

impl Error for gilrs::gamepad::Error

source§

impl Error for MappingError

source§

impl Error for url::parser::ParseError

source§

impl Error for rand::distributions::bernoulli::BernoulliError

source§

impl Error for rand::distributions::weighted::WeightedError

source§

impl Error for !

1.11.0 · source§

impl Error for geng::prelude::fmt::Error

§

impl Error for geng::prelude::futures::channel::mpsc::SendError

§

impl Error for geng::prelude::futures::channel::mpsc::TryRecvError

§

impl Error for Canceled

§

impl Error for EnterError

source§

impl Error for geng::prelude::futures::io::Error

§

impl Error for Aborted

§

impl Error for SpawnError

source§

impl Error for geng::prelude::log::kv::Error

source§

impl Error for geng::prelude::log::ParseLevelError

source§

impl Error for SetLoggerError

source§

impl Error for geng::prelude::rand::rngs::adapter::ReadError

source§

impl Error for geng::prelude::rand::Error

source§

impl Error for SpannedError

source§

impl Error for geng::prelude::serde_json::Error

§

impl Error for geng::prelude::toml::de::Error

§

impl Error for geng::prelude::toml::ser::Error

§

impl Error for DatetimeParseError

source§

impl Error for geng::prelude::serde::de::value::Error

1.57.0 · source§

impl Error for alloc::collections::TryReserveError

1.58.0 · source§

impl Error for FromVecWithNulError

1.7.0 · source§

impl Error for IntoStringError

source§

impl Error for NulError

source§

impl Error for FromUtf8Error

source§

impl Error for FromUtf16Error

1.28.0 · source§

impl Error for LayoutError

source§

impl Error for AllocError

1.34.0 · source§

impl Error for TryFromSliceError

1.13.0 · source§

impl Error for BorrowError

1.13.0 · source§

impl Error for BorrowMutError

1.34.0 · source§

impl Error for CharTryFromError

1.20.0 · source§

impl Error for ParseCharError

1.9.0 · source§

impl Error for DecodeUtf16Error

1.59.0 · source§

impl Error for TryFromCharError

1.69.0 · source§

impl Error for FromBytesUntilNulError

1.17.0 · source§

impl Error for FromBytesWithNulError

1.4.0 · source§

impl Error for core::net::parser::AddrParseError

source§

impl Error for ParseFloatError

source§

impl Error for ParseIntError

1.34.0 · source§

impl Error for TryFromIntError

source§

impl Error for ParseBoolError

source§

impl Error for Utf8Error

1.66.0 · source§

impl Error for TryFromFloatSecsError

source§

impl Error for JoinPathsError

1.56.0 · source§

impl Error for WriterPanicked

1.7.0 · source§

impl Error for StripPrefixError

source§

impl Error for ExitStatusError

source§

impl Error for std::sync::mpsc::RecvError

1.26.0 · source§

impl Error for std::thread::local::AccessError

1.8.0 · source§

impl Error for SystemTimeError

source§

impl Error for CompressError

source§

impl Error for DecompressError

source§

impl Error for getrandom::error::Error

source§

impl Error for h2::error::Error

source§

impl Error for LengthLimitError

source§

impl Error for http::error::Error

source§

impl Error for InvalidHeaderName

source§

impl Error for InvalidHeaderValue

source§

impl Error for ToStrError

source§

impl Error for InvalidMethod

source§

impl Error for InvalidStatusCode

source§

impl Error for InvalidUri

source§

impl Error for InvalidUriParts

source§

impl Error for indexmap::TryReserveError

source§

impl Error for PrefixLenError

source§

impl Error for ipnet::parser::AddrParseError

source§

impl Error for FromStrError

source§

impl Error for reqwest::error::Error

source§

impl Error for ProgramLinkError

source§

impl Error for ShaderCompilationError

source§

impl Error for uuid::error::Error

source§

impl Error for getrandom::error::Error

source§

impl Error for rand::rngs::adapter::read::ReadError

source§

impl Error for rand_core::error::Error

§

impl Error for AccessError

§

impl Error for AcquireError

§

impl Error for ActivateSlotError

§

impl Error for AddrParseError

§

impl Error for AnyDelimiterCodecError

§

impl Error for AudioReadError

§

impl Error for BackendSpecificError

§

impl Error for BadIcon

§

impl Error for BindError

§

impl Error for BuildError

§

impl Error for BuildError

§

impl Error for BuildError

§

impl Error for BuildError

§

impl Error for BuildError

§

impl Error for BuildStreamError

§

impl Error for CacheError

§

impl Error for CaseFoldError

§

impl Error for ChannelError

§

impl Error for ColorChoiceParseError

§

impl Error for ConnectError

§

impl Error for ConnectError

§

impl Error for ConnectionError

§

impl Error for CreateBufferError

§

impl Error for CreatePoolError

§

impl Error for DataOfferError

§

impl Error for DecodeError

§

impl Error for DecodeSliceError

§

impl Error for DecoderError

§

impl Error for DecodingError

§

impl Error for DecodingError

§

impl Error for DecodingError

§

impl Error for DecodingFormatError

§

impl Error for DefaultStreamConfigError

§

impl Error for DeserializeError

§

impl Error for DeviceNameError

§

impl Error for DevicesError

§

impl Error for DispatchError

§

impl Error for DlError

§

impl Error for Elapsed

§

impl Error for EncodeSliceError

§

impl Error for EncodingError

§

impl Error for EncodingError

§

impl Error for EncodingError

§

impl Error for Errno

§

impl Error for Errno

§

impl Error for Errno

§

impl Error for Errno

§

impl Error for Errno

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for Error

§

impl Error for ErrorKind

§

impl Error for Errors

§

impl Error for EventLoopError

§

impl Error for ExternalError

§

impl Error for FaceParsingError

§

impl Error for GlobalError

§

impl Error for GlobalError

§

impl Error for GroupInfoError

§

impl Error for HandleError

§

impl Error for HandleError

§

impl Error for HeaderReadError

§

impl Error for HostUnavailable

§

impl Error for IdsExhausted

§

impl Error for ImageError

§

impl Error for InitError

§

impl Error for InvalidDnsNameError

§

impl Error for InvalidDnsNameError

§

impl Error for InvalidFont

§

impl Error for InvalidId

§

impl Error for InvalidId

§

impl Error for InvalidNameError

§

impl Error for InvalidOutputSize

§

impl Error for JoinError

§

impl Error for LengthDelimitedCodecError

§

impl Error for LibxcbLoadError

§

impl Error for LimitError

§

impl Error for LinesCodecError

§

impl Error for LzwError

§

impl Error for MatchError

§

impl Error for MatchError

§

impl Error for NoWaylandLib

§

impl Error for NotSupportedError

§

impl Error for OggReadError

§

impl Error for OpenError

§

impl Error for OsError

§

impl Error for ParameterError

§

impl Error for ParseAlphabetError

§

impl Error for ParseColorError

§

impl Error for ParseError

§

impl Error for ParseError

§

impl Error for ParseError

§

impl Error for ParseError

§

impl Error for ParseLevelError

§

impl Error for ParseLevelFilterError

§

impl Error for PatternIDError

§

impl Error for PatternIDError

§

impl Error for PatternSetInsertError

§

impl Error for PauseStreamError

§

impl Error for PingError

§

impl Error for PlayError

§

impl Error for PlayStreamError

§

impl Error for PointerThemeError

§

impl Error for PoolError

§

impl Error for PopError

§

impl Error for ProtocolError

§

impl Error for RecvError

§

impl Error for RecvError

§

impl Error for RecvError

§

impl Error for RecvError

§

impl Error for RecvError

§

impl Error for RecvError

§

impl Error for RecvError

§

impl Error for RecvError

§

impl Error for RecvTimeoutError

§

impl Error for RecvTimeoutError

§

impl Error for ReplyError

§

impl Error for ReplyOrIdError

§

impl Error for ReuniteError

§

impl Error for ReuniteError

§

impl Error for SeatError

§

impl Error for SelectTimeoutError

§

impl Error for SerializeError

§

impl Error for SetGlobalDefaultError

§

impl Error for SignError

§

impl Error for SmallIndexError

§

impl Error for StartError

§

impl Error for StateIDError

§

impl Error for StateIDError

§

impl Error for StrSimError

§

impl Error for StreamError

§

impl Error for StreamError

§

impl Error for SupportedStreamConfigsError

§

impl Error for ThreadPoolBuildError

§

impl Error for TiffError

§

impl Error for TimeoutError

§

impl Error for TomlError

§

impl Error for TryAcquireError

§

impl Error for TryCurrentError

§

impl Error for TryLockError

§

impl Error for TryRecvError

§

impl Error for TryRecvError

§

impl Error for TryRecvError

§

impl Error for TryRecvError

§

impl Error for TryRecvError

§

impl Error for TryRecvError

§

impl Error for TryRecvError

§

impl Error for TryRecvError

§

impl Error for TrySelectError

§

impl Error for UnicodeWordBoundaryError

§

impl Error for UnicodeWordError

§

impl Error for UnknownLayer

§

impl Error for UnsupportedError

§

impl Error for VorbisError

§

impl Error for WEnumError

§

impl Error for WaylandError

§

impl Error for XNotSupported

source§

impl<'a, K, V> Error for alloc::collections::btree::map::entry::OccupiedError<'a, K, V>
where K: Debug + Ord, V: Debug,

source§

impl<'a, K, V> Error for std::collections::hash::map::OccupiedError<'a, K, V>
where K: Debug, V: Debug,

1.51.0 · source§

impl<'a, T> Error for &'a T
where T: Error + ?Sized,

§

impl<E> Error for Err<E>
where E: Debug,

§

impl<Enum> Error for TryFromPrimitiveError<Enum>
where Enum: TryFromPrimitive,

§

impl<F> Error for geng::prelude::cli::prelude::clap::error::Error<F>
where F: ErrorFormatter,

source§

impl<I> Error for geng::prelude::itertools::ExactlyOneError<I>
where I: Iterator + Debug, <I as Iterator>::Item: Debug,

source§

impl<I> Error for itertools::exactly_one_err::ExactlyOneError<I>
where I: Iterator + Debug, <I as Iterator>::Item: Debug,

§

impl<I> Error for Error<I>
where I: Debug + Display,

§

impl<I> Error for InputError<I>
where I: Clone + Debug + Display + Sync + Send + 'static,

§

impl<I> Error for VerboseError<I>
where I: Debug + Display,

§

impl<I, C> Error for TreeError<I, C>
where I: Clone + Debug + Display + Sync + Send + 'static, C: Display + Debug,

§

impl<I, C> Error for VerboseError<I, C>
where I: Clone + Debug + Display + Sync + Send + 'static, C: Display + Debug,

§

impl<K> Error for BufferSlot<K>
where BufferSlot<K>: Debug + Display,

source§

impl<L, R> Error for Either<L, R>
where L: Error, R: Error,

Either implements Error if both L and R implement it.

source§

impl<T> Error for std::sync::mpsc::TrySendError<T>

source§

impl<T> Error for std::sync::poison::TryLockError<T>

§

impl<T> Error for geng::prelude::futures::channel::mpsc::TrySendError<T>
where T: Any,

§

impl<T> Error for geng::prelude::futures::io::ReuniteError<T>
where T: Any,

1.52.0 · source§

impl<T> Error for Arc<T>
where T: Error + ?Sized,

1.8.0 · source§

impl<T> Error for Box<T>
where T: Error,

source§

impl<T> Error for ThinBox<T>
where T: Error + ?Sized,

source§

impl<T> Error for std::sync::mpsc::SendError<T>

source§

impl<T> Error for PoisonError<T>

source§

impl<T> Error for CapacityError<T>
where T: Any,

Requires features="std".

§

impl<T> Error for EventLoopClosed<T>
where T: Debug,

§

impl<T> Error for InsertError<T>
where InsertError<T>: Debug + Display,

§

impl<T> Error for PollSendError<T>
where T: Debug,

§

impl<T> Error for PushError<T>
where T: Debug,

§

impl<T> Error for SendError<T>

§

impl<T> Error for SendError<T>

§

impl<T> Error for SendError<T>

§

impl<T> Error for SendError<T>

§

impl<T> Error for SendError<T>

§

impl<T> Error for SendError<T>

§

impl<T> Error for SendError<T>
where T: Debug,

§

impl<T> Error for SendError<T>
where T: Any,

§

impl<T> Error for SendError<T>
where T: Send,

§

impl<T> Error for SendTimeoutError<T>

§

impl<T> Error for SendTimeoutError<T>

§

impl<T> Error for SendTimeoutError<T>
where T: Send,

§

impl<T> Error for SetError<T>
where T: Debug,

§

impl<T> Error for TrySendError<T>

§

impl<T> Error for TrySendError<T>

§

impl<T> Error for TrySendError<T>

§

impl<T> Error for TrySendError<T>

§

impl<T> Error for TrySendError<T>

§

impl<T> Error for TrySendError<T>
where T: Any,

§

impl<T> Error for TrySendError<T>
where T: Send,

§

impl<T, E> Error for TryChunksError<T, E>
where E: Debug + Display,

§

impl<T, E> Error for TryReadyChunksError<T, E>
where E: Debug + Display,

§

impl<T, Item> Error for geng::prelude::futures::prelude::stream::ReuniteError<T, Item>
where T: Any,

source§

impl<W> Error for IntoInnerError<W>
where W: Send + Debug,

source§

impl<const N: usize> Error for GetManyMutError<N>