trait DropTreeBuilder<'tcx> {
    // Required methods
    fn make_block(cfg: &mut CFG<'tcx>) -> BasicBlock;
    fn add_entry(cfg: &mut CFG<'tcx>, from: BasicBlock, to: BasicBlock);
}
Expand description

A trait that determined how DropTree creates its blocks and links to any entry nodes.

Required Methods§

source

fn make_block(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().

source

fn add_entry(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§

source§

impl<'tcx> DropTreeBuilder<'tcx> for ExitScopes

source§

impl<'tcx> DropTreeBuilder<'tcx> for GeneratorDrop

source§

impl<'tcx> DropTreeBuilder<'tcx> for Unwind