Struct rustc_borrowck::dataflow::BorrowckAnalyses
source · pub struct BorrowckAnalyses<B, U, E> {
pub borrows: B,
pub uninits: U,
pub ever_inits: E,
}
Expand description
A tuple with named fields that can hold either the results or the transient state of the dataflow analyses used by the borrow checker.
Fields§
§borrows: B
§uninits: U
§ever_inits: E
Trait Implementations§
source§impl<'tcx, B, U, E, D: Direction> ResultsVisitable<'tcx> for BorrowckAnalyses<Results<'tcx, B>, Results<'tcx, U>, Results<'tcx, E>>where
B: Analysis<'tcx, Direction = D>,
U: Analysis<'tcx, Direction = D>,
E: Analysis<'tcx, Direction = D>,
impl<'tcx, B, U, E, D: Direction> ResultsVisitable<'tcx> for BorrowckAnalyses<Results<'tcx, B>, Results<'tcx, U>, Results<'tcx, E>>where B: Analysis<'tcx, Direction = D>, U: Analysis<'tcx, Direction = D>, E: Analysis<'tcx, Direction = D>,
type Direction = D
type FlowState = BorrowckAnalyses<<B as AnalysisDomain<'tcx>>::Domain, <U as AnalysisDomain<'tcx>>::Domain, <E as AnalysisDomain<'tcx>>::Domain>
source§fn new_flow_state(&self, body: &Body<'tcx>) -> Self::FlowState
fn new_flow_state(&self, body: &Body<'tcx>) -> Self::FlowState
Creates an empty
FlowState
to hold the transient state for these dataflow results. Read morefn reset_to_block_entry(&self, state: &mut Self::FlowState, block: BasicBlock)
fn reconstruct_before_statement_effect( &mut self, state: &mut Self::FlowState, stmt: &Statement<'tcx>, loc: Location )
fn reconstruct_statement_effect( &mut self, state: &mut Self::FlowState, stmt: &Statement<'tcx>, loc: Location )
fn reconstruct_before_terminator_effect( &mut self, state: &mut Self::FlowState, term: &Terminator<'tcx>, loc: Location )
fn reconstruct_terminator_effect( &mut self, state: &mut Self::FlowState, term: &Terminator<'tcx>, loc: Location )
Auto Trait Implementations§
impl<B, U, E> RefUnwindSafe for BorrowckAnalyses<B, U, E>where B: RefUnwindSafe, E: RefUnwindSafe, U: RefUnwindSafe,
impl<B, U, E> Send for BorrowckAnalyses<B, U, E>where B: Send, E: Send, U: Send,
impl<B, U, E> Sync for BorrowckAnalyses<B, U, E>where B: Sync, E: Sync, U: Sync,
impl<B, U, E> Unpin for BorrowckAnalyses<B, U, E>where B: Unpin, E: Unpin, U: Unpin,
impl<B, U, E> UnwindSafe for BorrowckAnalyses<B, U, E>where B: UnwindSafe, E: UnwindSafe, U: UnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Layout§
Note: Unable to compute type layout, possibly due to this type having generic parameters. Layout can only be computed for concrete, fully-instantiated types.