[][src]Enum cargo_upgrades::MetadataError

pub enum MetadataError {
    CargoMetadata {
        stderr: String,
    },
    Io(Error),
    Utf8(Utf8Error),
    ErrUtf8(FromUtf8Error),
    Json(Error),
}

Error returned when executing/parsing cargo metadata fails.

Note about Backtraces

This error type does not contain backtraces, but each error variant comes from one specific place, so it's not really needed for the inside of this crate. If you need a backtrace down to, but not inside of, a failed call of cargo_metadata you can do one of multiple thinks:

  1. Convert it to a failure::Error (possible using the ? operator), which is similar to a Box<::std::error::Error + 'static + Send + Sync>.
  2. Have appropriate variants in your own error type. E.g. you could wrap a failure::Context<Error> or add a failure::Backtrace field (which is empty if RUST_BACKTRACE is not set, so it's simple to use).
  3. You still can place a failure based error into a error_chain if you really want to. (Either through foreign_links or by making it a field value of a ErrorKind variant).

Variants

CargoMetadata

Error during execution of cargo metadata

Fields of CargoMetadata

stderr: String

stderr returned by the cargo metadata command

Io(Error)

IO Error during execution of cargo metadata

Utf8(Utf8Error)

Output of cargo metadata was not valid utf8

ErrUtf8(FromUtf8Error)

Error output of cargo metadata was not valid utf8

Json(Error)

Deserialization error (structure of json did not match expected structure)

Trait Implementations

impl From<Utf8Error> for Error[src]

impl From<Error> for Error[src]

impl From<Error> for Error[src]

impl From<FromUtf8Error> for Error[src]

impl Fail for Error[src]

fn context<D>(self, context: D) -> Context<D> where
    D: Display + Send + Sync + 'static, 

Provides context for this failure. Read more

fn compat(self) -> Compat<Self>

Wraps this failure in a compatibility wrapper that implements std::error::Error. Read more

impl Display for Error[src]

impl Debug for Error[src]

impl From<Error> for Error

Auto Trait Implementations

impl Sync for Error

impl Send for Error

impl Unpin for Error

impl !RefUnwindSafe for Error

impl !UnwindSafe for Error

Blanket Implementations

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToString for T where
    T: Display + ?Sized
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> AsFail for T where
    T: Fail, 

impl<E> Fail for E where
    E: 'static + Error + Send + Sync

fn name(&self) -> Option<&str>

Returns the "name" of the error. Read more

fn cause(&self) -> Option<&(dyn Fail + 'static)>

Returns a reference to the underlying cause of this failure, if it is an error that wraps other errors. Read more

fn backtrace(&self) -> Option<&Backtrace>

Returns a reference to the Backtrace carried by this failure, if it carries one. Read more

fn context<D>(self, context: D) -> Context<D> where
    D: Display + Send + Sync + 'static, 

Provides context for this failure. Read more

fn compat(self) -> Compat<Self>

Wraps this failure in a compatibility wrapper that implements std::error::Error. Read more