Trait rustc_trait_selection::traits::specialize::specialization_graph::ChildrenExt[−][src]

trait ChildrenExt {
    fn insert_blindly<'tcx>(&mut self, tcx: TyCtxt<'tcx>, impl_def_id: DefId);
fn remove_existing<'tcx>(&mut self, tcx: TyCtxt<'tcx>, impl_def_id: DefId);
fn insert<'tcx>(
        &mut self,
        tcx: TyCtxt<'tcx>,
        impl_def_id: DefId,
        simplified_self: Option<SimplifiedType>
    ) -> Result<Inserted, OverlapError>; }

Required methods

Implementors

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

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.

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