/// Convenience wrapper that pushes a scope and then executes `f`
/// to build its contents, popping the scope afterwards.
Convenience wrapper that pushes a scope and then executes `f`
to build its contents, popping the scope afterwards.
Convenience wrapper that pushes a scope and then executes ` f ` to build its contents popping the scope afterwards .
pub fn in_scope<F, R>(&mut self, extent: CodeExtent, mut block: BasicBlock, f: F) -> BlockAnd<R>
        where F: FnOnce(&mut Builder<'a, 'gcx, 'tcx>) -> BlockAnd<R>
    {
        debug!("in_scope(extent={:?}, block={:?})", extent, block);
        self.push_scope(extent, block);
        let rv = unpack!(block = f(self));
        unpack!(block = self.pop_scope(extent, block));
        debug!("in_scope: exiting extent={:?} block={:?}", extent, block);
        block.and(rv)
    }
pub fn in_scope < F , R > ( & mut self , extent : CodeExtent , mut block : BasicBlock , f : F ) -> BlockAnd < R > where F : FnOnce ( & mut Builder < ' a , ' gcx , ' tcx > ) -> BlockAnd < R > { debug ! ( " " extent block ) ; self . push_scope ( extent , block ) ; let rv = unpack ! ( block f ( self ) ) ; unpack ! ( block self pop_scope ( extent block ) ) ; debug ! ( " " extent block ) ; block . and ( rv ) }
Convenience wrapper that pushes a scope and then executes `f`
to build its contents, popping the scope afterwards.
Convenience wrapper that pushes a scope and then executes ` f ` to build its contents popping the scope afterwards .
&mut self
extent
CodeExtent
block
BasicBlock
f
F