[][src]Struct rustc_data_structures::obligation_forest::Outcome

pub struct Outcome<O, E> {
    pub completed: Option<Vec<O>>,
    pub errors: Vec<Error<O, E>>,
    pub stalled: bool,


completed: Option<Vec<O>>

Obligations that were completely evaluated, including all (transitive) subobligations. Only computed if requested.

errors: Vec<Error<O, E>>

Backtrace of obligations that were found to be in error.

stalled: bool

If true, then we saw no successful obligations, which means there is no point in further iteration. This is based on the assumption that when trait matching returns Error or Unchanged, those results do not affect environmental inference state. (Note that if we invoke process_obligations with no pending obligations, stalled will be true.)

Trait Implementations

impl<O: Debug, E: Debug> Debug for Outcome<O, E>[src]

Auto Trait Implementations

impl<O, E> RefUnwindSafe for Outcome<O, E> where
    E: RefUnwindSafe,
    O: RefUnwindSafe

impl<O, E> Send for Outcome<O, E> where
    E: Send,
    O: Send

impl<O, E> Sync for Outcome<O, E> where
    E: Sync,
    O: Sync

impl<O, E> Unpin for Outcome<O, E> where
    E: Unpin,
    O: Unpin

impl<O, E> UnwindSafe for Outcome<O, E> where
    E: UnwindSafe,
    O: UnwindSafe

Blanket Implementations

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

impl<T> Borrow<T> for T where
    T: ?Sized

impl<T> BorrowMut<T> for T where
    T: ?Sized

impl<'a, T> Captures<'a> for T where
    T: ?Sized

impl<T> Erased for T[src]

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

impl<T, U> Into<U> for T where
    U: From<T>, 

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 

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

The type returned in the event of a conversion error.