Enum flowistry_pdg::rustc::mir::terminator::TerminatorEdges
source · pub enum TerminatorEdges<'mir, 'tcx> {
None,
Single(BasicBlock),
Double(BasicBlock, BasicBlock),
AssignOnReturn {
return_: Option<BasicBlock>,
unwind: UnwindAction,
place: CallReturnPlaces<'mir, 'tcx>,
},
SwitchInt {
targets: &'mir SwitchTargets,
discr: &'mir Operand<'tcx>,
},
}
Variants§
None
For terminators that have no successor, like return
.
Single(BasicBlock)
For terminators that a single successor, like goto
, and assert
without cleanup block.
Double(BasicBlock, BasicBlock)
For terminators that two successors, assert
with cleanup block and falseEdge
.
AssignOnReturn
Special action for Yield
, Call
and InlineAsm
terminators.
SwitchInt
Special edge for SwitchInt
.
Auto Trait Implementations§
impl<'mir, 'tcx> !RefUnwindSafe for TerminatorEdges<'mir, 'tcx>
impl<'mir, 'tcx> !Send for TerminatorEdges<'mir, 'tcx>
impl<'mir, 'tcx> !Sync for TerminatorEdges<'mir, 'tcx>
impl<'mir, 'tcx> Unpin for TerminatorEdges<'mir, 'tcx>
impl<'mir, 'tcx> !UnwindSafe for TerminatorEdges<'mir, '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