about summary refs log tree commit diff
path: root/src/rustc/syntax/visit.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/rustc/syntax/visit.rs')
-rw-r--r--src/rustc/syntax/visit.rs27
1 files changed, 13 insertions, 14 deletions
diff --git a/src/rustc/syntax/visit.rs b/src/rustc/syntax/visit.rs
index 7a84052fa90..b4bcb3aaa31 100644
--- a/src/rustc/syntax/visit.rs
+++ b/src/rustc/syntax/visit.rs
@@ -55,7 +55,7 @@ type visitor<E> =
       visit_ty_params: fn@([ty_param], E, vt<E>),
       visit_constr: fn@(@path, span, node_id, E, vt<E>),
       visit_fn: fn@(fn_kind, fn_decl, blk, span, node_id, E, vt<E>),
-      visit_class_item: fn@(span, privacy, class_member, E, vt<E>)};
+      visit_class_item: fn@(@class_member, E, vt<E>)};
 
 fn default_visitor<E>() -> visitor<E> {
     ret @{visit_mod: bind visit_mod::<E>(_, _, _, _, _),
@@ -73,7 +73,7 @@ fn default_visitor<E>() -> visitor<E> {
           visit_ty_params: bind visit_ty_params::<E>(_, _, _),
           visit_constr: bind visit_constr::<E>(_, _, _, _, _),
           visit_fn: bind visit_fn::<E>(_, _, _, _, _, _, _),
-          visit_class_item: bind visit_class_item::<E>(_,_,_,_,_)};
+          visit_class_item: bind visit_class_item::<E>(_,_,_)};
 }
 
 fn visit_crate<E>(c: crate, e: E, v: vt<E>) {
@@ -139,7 +139,7 @@ fn visit_item<E>(i: @item, e: E, v: vt<E>) {
       item_class(tps, members, ctor) {
           v.visit_ty_params(tps, e, v);
           for m in members {
-             v.visit_class_item(m.span, m.node.privacy, m.node.decl, e, v);
+             v.visit_class_item(m, e, v);
           }
           // make up a fake fn so as to call visit_fn on the ctor
           v.visit_fn(fk_ctor(i.ident, tps), ctor.node.dec,
@@ -155,10 +155,9 @@ fn visit_item<E>(i: @item, e: E, v: vt<E>) {
     }
 }
 
-fn visit_class_item<E>(_s: span, _p: privacy, cm: class_member,
-                       e:E, v:vt<E>) {
-    alt cm {
-        instance_var(ident, t, mt, id) {
+fn visit_class_item<E>(cm: @class_member, e:E, v:vt<E>) {
+    alt cm.node {
+        instance_var(_, t, _, _, _) {
             v.visit_ty(t, e, v);
         }
         class_method(m) {
@@ -427,7 +426,7 @@ type simple_visitor =
       visit_ty_params: fn@([ty_param]),
       visit_constr: fn@(@path, span, node_id),
       visit_fn: fn@(fn_kind, fn_decl, blk, span, node_id),
-      visit_class_item: fn@(span, privacy, class_member)};
+      visit_class_item: fn@(@class_member)};
 
 fn simple_ignore_ty(_t: @ty) {}
 
@@ -448,7 +447,7 @@ fn default_simple_visitor() -> simple_visitor {
           visit_constr: fn@(_p: @path, _sp: span, _id: node_id) { },
           visit_fn: fn@(_fk: fn_kind, _d: fn_decl, _b: blk, _sp: span,
                         _id: node_id) { },
-          visit_class_item: fn@(_s: span, _p: privacy, _c: class_member) {}
+          visit_class_item: fn@(_c: @class_member) {}
          };
 }
 
@@ -523,11 +522,11 @@ fn mk_simple_visitor(v: simple_visitor) -> vt<()> {
     } else {
         bind v_ty(v.visit_ty, _, _, _)
     };
-    fn v_class_item(f: fn@(span, privacy, class_member),
-                    s:span, p:privacy, cm: class_member, &&e: (),
+    fn v_class_item(f: fn@(@class_member),
+                    cm: @class_member, &&e: (),
                     v: vt<()>) {
-        f(s, p, cm);
-        visit_class_item(s, p, cm, e, v);
+        f(cm);
+        visit_class_item(cm, e, v);
     }
     ret mk_vt(@{visit_mod: bind v_mod(v.visit_mod, _, _, _, _, _),
                 visit_view_item: bind v_view_item(v.visit_view_item, _, _, _),
@@ -546,7 +545,7 @@ fn mk_simple_visitor(v: simple_visitor) -> vt<()> {
                 visit_constr: bind v_constr(v.visit_constr, _, _, _, _, _),
                 visit_fn: bind v_fn(v.visit_fn, _, _, _, _, _, _, _),
                 visit_class_item: bind v_class_item(v.visit_class_item, _, _,
-                                                    _, _, _)
+                                                    _)
                });
 }