From 23808efd11be2a9f964373bd8d684d98565e58d0 Mon Sep 17 00:00:00 2001 From: Erick Tryzelaar Date: Sat, 1 Jun 2013 15:31:56 -0700 Subject: syntax: move callee_id into the expr_ variants --- src/libsyntax/fold.rs | 38 +++++++++++++++++++++++++++++--------- 1 file changed, 29 insertions(+), 9 deletions(-) (limited to 'src/libsyntax/fold.rs') diff --git a/src/libsyntax/fold.rs b/src/libsyntax/fold.rs index 27a10c36ead..5800254eaa4 100644 --- a/src/libsyntax/fold.rs +++ b/src/libsyntax/fold.rs @@ -463,8 +463,9 @@ pub fn noop_fold_expr(e: &expr_, fld: @ast_fold) -> expr_ { blk ) } - expr_method_call(f, i, ref tps, ref args, blk) => { + expr_method_call(callee_id, f, i, ref tps, ref args, blk) => { expr_method_call( + fld.new_id(callee_id), fld.fold_expr(f), fld.fold_ident(i), tps.map(|x| fld.fold_ty(*x)), @@ -472,10 +473,21 @@ pub fn noop_fold_expr(e: &expr_, fld: @ast_fold) -> expr_ { blk ) } - expr_binary(binop, lhs, rhs) => { - expr_binary(binop, fld.fold_expr(lhs), fld.fold_expr(rhs)) + expr_binary(callee_id, binop, lhs, rhs) => { + expr_binary( + fld.new_id(callee_id), + binop, + fld.fold_expr(lhs), + fld.fold_expr(rhs) + ) + } + expr_unary(callee_id, binop, ohs) => { + expr_unary( + fld.new_id(callee_id), + binop, + fld.fold_expr(ohs) + ) } - expr_unary(binop, ohs) => expr_unary(binop, fld.fold_expr(ohs)), expr_loop_body(f) => expr_loop_body(fld.fold_expr(f)), expr_do_body(f) => expr_do_body(fld.fold_expr(f)), expr_lit(_) => copy *e, @@ -514,8 +526,13 @@ pub fn noop_fold_expr(e: &expr_, fld: @ast_fold) -> expr_ { expr_assign(el, er) => { expr_assign(fld.fold_expr(el), fld.fold_expr(er)) } - expr_assign_op(op, el, er) => { - expr_assign_op(op, fld.fold_expr(el), fld.fold_expr(er)) + expr_assign_op(callee_id, op, el, er) => { + expr_assign_op( + fld.new_id(callee_id), + op, + fld.fold_expr(el), + fld.fold_expr(er) + ) } expr_field(el, id, ref tys) => { expr_field( @@ -523,8 +540,12 @@ pub fn noop_fold_expr(e: &expr_, fld: @ast_fold) -> expr_ { tys.map(|x| fld.fold_ty(*x)) ) } - expr_index(el, er) => { - expr_index(fld.fold_expr(el), fld.fold_expr(er)) + expr_index(callee_id, el, er) => { + expr_index( + fld.new_id(callee_id), + fld.fold_expr(el), + fld.fold_expr(er) + ) } expr_path(pth) => expr_path(fld.fold_path(pth)), expr_self => expr_self, @@ -801,7 +822,6 @@ impl ast_fold for AstFoldFns { let (n, s) = (self.fold_expr)(&x.node, x.span, self as @ast_fold); @expr { id: (self.new_id)(x.id), - callee_id: (self.new_id)(x.callee_id), node: n, span: (self.new_span)(s), } -- cgit 1.4.1-3-g733a5