[−][src]Trait rustc_mir_build::build::scope::DropTreeBuilder
A trait that determined how DropTree creates its blocks and links to any entry nodes.
Required methods
pub(in build::scope) fn make_block(
cfg: &mut CFG<'tcx>
) -> BasicBlock[src]
cfg: &mut CFG<'tcx>
) -> BasicBlock
Create a new block for the tree. This should call either
cfg.start_new_block() or cfg.start_new_cleanup_block().
pub(in build::scope) fn add_entry(
cfg: &mut CFG<'tcx>,
from: BasicBlock,
to: BasicBlock
)[src]
cfg: &mut CFG<'tcx>,
from: BasicBlock,
to: BasicBlock
)
Links a block outside the drop tree, from, to the block to inside
the drop tree.
Implementors
impl<'tcx> DropTreeBuilder<'tcx> for ExitScopes[src]
pub(in build::scope) fn make_block(
cfg: &mut CFG<'tcx>
) -> BasicBlock[src]
cfg: &mut CFG<'tcx>
) -> BasicBlock
pub(in build::scope) fn add_entry(
cfg: &mut CFG<'tcx>,
from: BasicBlock,
to: BasicBlock
)[src]
cfg: &mut CFG<'tcx>,
from: BasicBlock,
to: BasicBlock
)
impl<'tcx> DropTreeBuilder<'tcx> for GeneratorDrop[src]
pub(in build::scope) fn make_block(
cfg: &mut CFG<'tcx>
) -> BasicBlock[src]
cfg: &mut CFG<'tcx>
) -> BasicBlock
pub(in build::scope) fn add_entry(
cfg: &mut CFG<'tcx>,
from: BasicBlock,
to: BasicBlock
)[src]
cfg: &mut CFG<'tcx>,
from: BasicBlock,
to: BasicBlock
)
impl<'tcx> DropTreeBuilder<'tcx> for Unwind[src]
pub(in build::scope) fn make_block(
cfg: &mut CFG<'tcx>
) -> BasicBlock[src]
cfg: &mut CFG<'tcx>
) -> BasicBlock
pub(in build::scope) fn add_entry(
cfg: &mut CFG<'tcx>,
from: BasicBlock,
to: BasicBlock
)[src]
cfg: &mut CFG<'tcx>,
from: BasicBlock,
to: BasicBlock
)