- // Could be an item or a local (let) binding:
- StmtKind::Decl(ref decl, _) => {
- let decl_pat = self.next("decl");
- println!("Decl(ref {}, _) = {}", decl_pat, current);
- print!(" if let DeclKind::");
- let current = format!("{}.node", decl_pat);
- match decl.node {
- // A local (let) binding:
- DeclKind::Local(ref local) => {
- let local_pat = self.next("local");
- println!("Local(ref {}) = {};", local_pat, current);
- if let Some(ref init) = local.init {
- let init_pat = self.next("init");
- println!(" if let Some(ref {}) = {}.init", init_pat, local_pat);
- self.current = init_pat;
- self.visit_expr(init);
- }
- self.current = format!("{}.pat", local_pat);
- self.visit_pat(&local.pat);
- },
- // An item binding:
- DeclKind::Item(_) => {
- println!("Item(item_id) = {};", current);
- },
+ // A local (let) binding:
+ StmtKind::Local(ref local) => {
+ let local_pat = self.next("local");
+ println!("Local(ref {}) = {};", local_pat, current);
+ if let Some(ref init) = local.init {
+ let init_pat = self.next("init");
+ println!(" if let Some(ref {}) = {}.init;", init_pat, local_pat);
+ self.current = init_pat;
+ self.visit_expr(init);