[−][src]Struct rustc_infer::infer::region_constraints::leak_check::MiniGraph
Represents the graph of constraints. For each R1: R2 constraint we create
an edge R1 -> R2 in the graph.
Fields
nodes: FxHashMap<Region<'tcx>, LeakCheckNode>Map from a region to the index of the node in the graph.
sccs: Sccs<LeakCheckNode, LeakCheckScc>Map from node index to SCC, and stores the successors of each SCC. All
the regions in the same SCC are equal to one another, and if S1 -> S2,
then S1: S2.
Implementations
impl<'tcx> MiniGraph<'tcx>[src]
pub(in infer::region_constraints::leak_check) fn new<'a>(
tcx: TyCtxt<'tcx>,
undo_log: impl Iterator<Item = &'a UndoLog<'tcx>>,
verifys: &[Verify<'tcx>]
) -> Self where
'tcx: 'a, [src]
tcx: TyCtxt<'tcx>,
undo_log: impl Iterator<Item = &'a UndoLog<'tcx>>,
verifys: &[Verify<'tcx>]
) -> Self where
'tcx: 'a,
pub(in infer::region_constraints::leak_check) fn iterate_undo_log<'a>(
tcx: TyCtxt<'tcx>,
undo_log: impl Iterator<Item = &'a UndoLog<'tcx>>,
verifys: &[Verify<'tcx>],
each_edge: impl FnMut(Region<'tcx>, Region<'tcx>)
) where
'tcx: 'a, [src]
tcx: TyCtxt<'tcx>,
undo_log: impl Iterator<Item = &'a UndoLog<'tcx>>,
verifys: &[Verify<'tcx>],
each_edge: impl FnMut(Region<'tcx>, Region<'tcx>)
) where
'tcx: 'a,
Invokes each_edge(R1, R2) for each edge where R2: R1
pub(in infer::region_constraints::leak_check) fn add_node(
nodes: &mut FxHashMap<Region<'tcx>, LeakCheckNode>,
r: Region<'tcx>
) -> LeakCheckNode[src]
nodes: &mut FxHashMap<Region<'tcx>, LeakCheckNode>,
r: Region<'tcx>
) -> LeakCheckNode
Auto Trait Implementations
impl<'tcx> RefUnwindSafe for MiniGraph<'tcx>
impl<'tcx> Send for MiniGraph<'tcx>
impl<'tcx> Sync for MiniGraph<'tcx>
impl<'tcx> Unpin for MiniGraph<'tcx>
impl<'tcx> UnwindSafe for MiniGraph<'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<'a, T> Captures<'a> for T where
T: ?Sized, [src]
T: ?Sized,
impl<T> From<T> for T[src]
impl<T, U> Into<U> for T where
U: From<T>, [src]
U: From<T>,
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.