pub fn expand_block_elts(b: &Block, fld: &mut MacroExpander) -> P<Block> {
    let new_view_items = b.view_items.map(|x| fld.fold_view_item(x));
    let new_stmts = b.stmts.iter()
            .map(|x| {
                let pending_renames = &mut fld.extsbox.info().pending_renames;
                let mut rename_fld = renames_to_fold(pending_renames);
                rename_fld.fold_stmt(*x).expect_one("rename_fold didn't return one value")
             })
            .flat_map(|x| fld.fold_stmt(x).move_iter())
            .collect();
    let new_expr = b.expr.map(|x| {
        let expr = {
            let pending_renames = &mut fld.extsbox.info().pending_renames;
            let mut rename_fld = renames_to_fold(pending_renames);
            rename_fld.fold_expr(x)
        };
        fld.fold_expr(expr)
    });
    P(Block {
        view_items: new_view_items,
        stmts: new_stmts,
        expr: new_expr,
        id: fld.new_id(b.id),
        rules: b.rules,
        span: b.span,
    })
}
// expand the elements of a block.
expand the elements of a block.
expand the elements of a block .
pub fn expand_block_elts(b: &Block, fld: &mut MacroExpander) -> P<Block> {
    let new_view_items = b.view_items.map(|x| fld.fold_view_item(x));
    let new_stmts = b.stmts.iter()
            .map(|x| {
                let pending_renames = &mut fld.extsbox.info().pending_renames;
                let mut rename_fld = renames_to_fold(pending_renames);
                rename_fld.fold_stmt(*x).expect_one("rename_fold didn't return one value")
             })
            .flat_map(|x| fld.fold_stmt(x).move_iter())
            .collect();
    let new_expr = b.expr.map(|x| {
        let expr = {
            let pending_renames = &mut fld.extsbox.info().pending_renames;
            let mut rename_fld = renames_to_fold(pending_renames);
            rename_fld.fold_expr(x)
        };
        fld.fold_expr(expr)
    });
    P(Block {
        view_items: new_view_items,
        stmts: new_stmts,
        expr: new_expr,
        id: fld.new_id(b.id),
        rules: b.rules,
        span: b.span,
    })
}
pub fn expand_block_elts ( b : & Block , fld : & mut MacroExpander ) -> P < Block > { let new_view_items = b . view_items . map ( | x | fld . fold_view_item ( x ) ) ; let new_stmts = b . stmts . iter ( ) . map ( | x | { let pending_renames = & mut fld . extsbox . info ( ) . pending_renames ; let mut rename_fld = renames_to_fold ( pending_renames ) ; rename_fld . fold_stmt ( * x ) . expect_one ( " " ) } ) . flat_map ( | x | fld . fold_stmt ( x ) . move_iter ( ) ) . collect ( ) ; let new_expr = b . expr . map ( | x | { let expr = { let pending_renames = & mut fld . extsbox . info ( ) . pending_renames ; let mut rename_fld = renames_to_fold ( pending_renames ) ; rename_fld . fold_expr ( x ) } ; fld . fold_expr ( expr ) } ) ; P ( Block { view_items : new_view_items , stmts : new_stmts , expr : new_expr , id : fld . new_id ( b . id ) , rules : b . rules , span : b . span , } ) }
expand the elements of a block.
expand the elements of a block .
b
&Block
fld
&mut MacroExpander
b
&Block
fld
&mut MacroExpander