Struct cairo_lang_lowering::borrow_check::analysis::BackAnalysis
source · pub struct BackAnalysis<'a, TAnalyzer: Analyzer<'a>> {
pub lowered: &'a FlatLowered,
pub block_info: HashMap<BlockId, TAnalyzer::Info>,
pub analyzer: TAnalyzer,
}
Expand description
Main analysis type that allows traversing the flow backwards.
Fields§
§lowered: &'a FlatLowered
§block_info: HashMap<BlockId, TAnalyzer::Info>
§analyzer: TAnalyzer
Implementations§
source§impl<'a, TAnalyzer: Analyzer<'a>> BackAnalysis<'a, TAnalyzer>
impl<'a, TAnalyzer: Analyzer<'a>> BackAnalysis<'a, TAnalyzer>
sourcepub fn get_root_info(&mut self) -> TAnalyzer::Info
pub fn get_root_info(&mut self) -> TAnalyzer::Info
Gets the analysis info for the entire function.
Auto Trait Implementations§
impl<'a, TAnalyzer> RefUnwindSafe for BackAnalysis<'a, TAnalyzer>where TAnalyzer: RefUnwindSafe, <TAnalyzer as Analyzer<'a>>::Info: RefUnwindSafe,
impl<'a, TAnalyzer> Send for BackAnalysis<'a, TAnalyzer>where TAnalyzer: Send, <TAnalyzer as Analyzer<'a>>::Info: Send,
impl<'a, TAnalyzer> Sync for BackAnalysis<'a, TAnalyzer>where TAnalyzer: Sync, <TAnalyzer as Analyzer<'a>>::Info: Sync,
impl<'a, TAnalyzer> Unpin for BackAnalysis<'a, TAnalyzer>where TAnalyzer: Unpin, <TAnalyzer as Analyzer<'a>>::Info: Unpin,
impl<'a, TAnalyzer> UnwindSafe for BackAnalysis<'a, TAnalyzer>where TAnalyzer: UnwindSafe, <TAnalyzer as Analyzer<'a>>::Info: 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