[−][src]Struct rustc_trait_selection::traits::specialize::specialization_graph::Children

pub struct Children {
    pub nonblanket_impls: HashMap<SimplifiedTypeGen<DefId>, Vec<DefId>, BuildHasherDefault<FxHasher>>,
    pub blanket_impls: Vec<DefId>,
}

Children of a given impl, grouped into blanket/non-blanket varieties as is done in TraitDef.

Fields

nonblanket_impls: HashMap<SimplifiedTypeGen<DefId>, Vec<DefId>, BuildHasherDefault<FxHasher>>

Impls of the trait.

blanket_impls: Vec<DefId>

Blanket impls associated with the trait.

Trait Implementations

impl ChildrenExt for Children[src]

pub(in traits::specialize::specialization_graph) fn insert_blindly<'tcx>(
    &mut self,
    tcx: TyCtxt<'tcx>,
    impl_def_id: DefId
)
[src]

Insert an impl into this set of children without comparing to any existing impls.

pub(in traits::specialize::specialization_graph) fn remove_existing<'tcx>(
    &mut self,
    tcx: TyCtxt<'tcx>,
    impl_def_id: DefId
)
[src]

Removes an impl from this set of children. Used when replacing an impl with a parent. The impl must be present in the list of children already.

pub(in traits::specialize::specialization_graph) fn insert<'tcx>(
    &mut self,
    tcx: TyCtxt<'tcx>,
    impl_def_id: DefId,
    simplified_self: Option<SimplifiedType>
) -> Result<Inserted, OverlapError>
[src]

Attempt to insert an impl into this set of children, while comparing for specialization relationships.

Auto Trait Implementations

impl RefUnwindSafe for Children

impl Send for Children

impl Sync for Children

impl Unpin for Children

impl UnwindSafe for Children

Blanket Implementations

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

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

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

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

impl<T, U> Into<U> for T where
    U: From<T>, 
[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> WithConstness for T[src]