pub struct ReachableDefinitionsAnalysis<'lt> { /* private fields */ }Implementations§
Source§impl<'lt> ReachableDefinitionsAnalysis<'lt>
impl<'lt> ReachableDefinitionsAnalysis<'lt>
pub fn new(mir: &'lt Mir, cfg: &ControlFlowGraph) -> Self
pub fn run( self, cfg: &ControlFlowGraph, ) -> (UseDefGraph, DataFlowGraph<StatementId>)
Trait Implementations§
Source§impl<'lt> GenKillAnalysis<'_> for ReachableDefinitionsAnalysis<'lt>
impl<'lt> GenKillAnalysis<'_> for ReachableDefinitionsAnalysis<'lt>
type SetType = StatementId
type Direction = Forward
fn transfer_function( &mut self, gen_kill_set: &mut GenKillSet<StatementId>, basic_bock: BasicBlockId, cfg: &ControlFlowGraph, )
fn max_idx(&self) -> Self::SetType
Auto Trait Implementations§
impl<'lt> Freeze for ReachableDefinitionsAnalysis<'lt>
impl<'lt> RefUnwindSafe for ReachableDefinitionsAnalysis<'lt>
impl<'lt> !Send for ReachableDefinitionsAnalysis<'lt>
impl<'lt> !Sync for ReachableDefinitionsAnalysis<'lt>
impl<'lt> Unpin for ReachableDefinitionsAnalysis<'lt>
impl<'lt> UnwindSafe for ReachableDefinitionsAnalysis<'lt>
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