pub struct Block<'tcx> {
pub index: usize,
pub is_cleanup: bool,
pub next: FxHashSet<usize>,
pub assignments: Vec<Assignment<'tcx>>,
pub const_value: Vec<ConstValue>,
pub assigned_locals: FxHashSet<usize>,
pub terminator: Term<'tcx>,
pub scc: SccInfo,
}Expand description
Each block is a strongly-connected component on the control-flow graph.
Fields§
§index: usize§is_cleanup: bool§next: FxHashSet<usize>§assignments: Vec<Assignment<'tcx>>§const_value: Vec<ConstValue>§assigned_locals: FxHashSet<usize>§terminator: Term<'tcx>§scc: SccInfoAll nodes belongs to a SCC. This field could be a single node SCC. The loops in the CFG are natural loops, so each SCC has only one enter.
Implementations§
Trait Implementations§
Auto Trait Implementations§
impl<'tcx> Freeze for Block<'tcx>
impl<'tcx> !RefUnwindSafe for Block<'tcx>
impl<'tcx> Send for Block<'tcx>
impl<'tcx> Sync for Block<'tcx>
impl<'tcx> Unpin for Block<'tcx>
impl<'tcx> !UnwindSafe for Block<'tcx>
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