Trait rustc_trait_selection::traits::specialize::specialization_graph::ChildrenExt [−][src]
Required methods
fn insert_blindly<'tcx>(&mut self, tcx: TyCtxt<'tcx>, impl_def_id: DefId)[src]
fn remove_existing<'tcx>(&mut self, tcx: TyCtxt<'tcx>, impl_def_id: DefId)[src]
fn insert<'tcx>(
&mut self,
tcx: TyCtxt<'tcx>,
impl_def_id: DefId,
simplified_self: Option<SimplifiedType>
) -> Result<Inserted, OverlapError>[src]
&mut self,
tcx: TyCtxt<'tcx>,
impl_def_id: DefId,
simplified_self: Option<SimplifiedType>
) -> Result<Inserted, OverlapError>
Implementors
impl ChildrenExt for Children[src]
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.
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.
fn insert<'tcx>(
&mut self,
tcx: TyCtxt<'tcx>,
impl_def_id: DefId,
simplified_self: Option<SimplifiedType>
) -> Result<Inserted, OverlapError>[src]
&mut self,
tcx: TyCtxt<'tcx>,
impl_def_id: DefId,
simplified_self: Option<SimplifiedType>
) -> Result<Inserted, OverlapError>
Attempt to insert an impl into this set of children, while comparing for specialization relationships.