[−][src]Struct rustc_trait_selection::traits::util::Elaborator
"Elaboration" is the process of identifying all the predicates that
are implied by a source predicate. Currently, this basically means
walking the "supertraits" and other similar assumptions. For example,
if we know that T: Ord, the elaborator would deduce that T: PartialOrd
holds as well. Similarly, if we have trait Foo: 'static, and we know that
T: Foo, then we know that T: 'static.
Fields
stack: Vec<Obligation<'tcx, Predicate<'tcx>>>visited: PredicateSet<'tcx>Auto Trait Implementations
impl<'tcx> !RefUnwindSafe for Elaborator<'tcx>
impl<'tcx> !Send for Elaborator<'tcx>
impl<'tcx> !Sync for Elaborator<'tcx>
impl<'tcx> Unpin for Elaborator<'tcx>
impl<'tcx> !UnwindSafe for Elaborator<'tcx>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized, [src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized, [src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T[src]
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
impl<I> IntoIterator for I where
I: Iterator, [src]
I: Iterator,
type Item = <I as Iterator>::Item
The type of the elements being iterated over.
type IntoIter = I
Which kind of iterator are we turning this into?
pub fn into_iter(self) -> I[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>, [src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>, [src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.