X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Flibrustdoc%2Fvisit_ast.rs;h=e3426fba1bca18426e8aa8fd1e9bbb34216bedee;hb=6f4ab9458a7ad06c8ce630604f533c8c0c0acef4;hp=39ebe490d0eb28a064821bde1f20c3e37b638db2;hpb=3a550a48935d0823c85846889ab2c1614673d794;p=rust.git diff --git a/src/librustdoc/visit_ast.rs b/src/librustdoc/visit_ast.rs index 39ebe490d0e..e3426fba1bc 100644 --- a/src/librustdoc/visit_ast.rs +++ b/src/librustdoc/visit_ast.rs @@ -58,7 +58,7 @@ pub fn new(cx: &'a core::DocContext<'a, 'tcx>) -> RustdocVisitor<'a, 'tcx> { RustdocVisitor { module: Module::new(None), attrs: hir::HirVec::new(), - cx: cx, + cx, view_item_stack: stack, inlining: false, inside_public_path: true, @@ -99,8 +99,8 @@ pub fn visit_variant_data(&mut self, item: &hir::Item, let struct_type = struct_type_from_def(&*sd); Struct { id: item.id, - struct_type: struct_type, - name: name, + struct_type, + name, vis: item.vis.clone(), stab: self.stability(item.id), depr: self.deprecation(item.id), @@ -118,8 +118,8 @@ pub fn visit_union_data(&mut self, item: &hir::Item, let struct_type = struct_type_from_def(&*sd); Union { id: item.id, - struct_type: struct_type, - name: name, + struct_type, + name, vis: item.vis.clone(), stab: self.stability(item.id), depr: self.deprecation(item.id), @@ -135,7 +135,7 @@ pub fn visit_enum_def(&mut self, it: &hir::Item, params: &hir::Generics) -> Enum { debug!("Visiting enum"); Enum { - name: name, + name, variants: def.variants.iter().map(|v| Variant { name: v.node.name, attrs: v.node.attrs.clone(), @@ -169,13 +169,13 @@ pub fn visit_fn(&mut self, item: &hir::Item, depr: self.deprecation(item.id), attrs: item.attrs.clone(), decl: fd.clone(), - name: name, + name, whence: item.span, generics: gen.clone(), unsafety: *unsafety, - constness: constness, + constness, abi: *abi, - body: body, + body, } } @@ -221,11 +221,11 @@ pub fn visit_mod_contents(&mut self, span: Span, attrs: hir::HirVec bool { if !self.view_item_stack.insert(def_node_id) { return false } let ret = match tcx.hir.get(def_node_id) { - hir_map::NodeItem(it) => { + hir_map::NodeItem(&hir::Item { node: hir::ItemMod(ref m), .. }) if glob => { let prev = mem::replace(&mut self.inlining, true); - if glob { - match it.node { - hir::ItemMod(ref m) => { - for i in &m.item_ids { - let i = self.cx.tcx.hir.expect_item(i.id); - self.visit_item(i, None, om); - } - } - hir::ItemEnum(..) => {} - _ => { panic!("glob not mapped to a module or enum"); } - } - } else { - self.visit_item(it, renamed, om); + for i in &m.item_ids { + let i = self.cx.tcx.hir.expect_item(i.id); + self.visit_item(i, None, om); } self.inlining = prev; true } + hir_map::NodeItem(it) if !glob => { + let prev = mem::replace(&mut self.inlining, true); + self.visit_item(it, renamed, om); + self.inlining = prev; + true + } _ => false, }; self.view_item_stack.remove(&def_node_id); @@ -378,7 +374,7 @@ pub fn visit_item(&mut self, item: &hir::Item, om.extern_crates.push(ExternCrate { cnum: cstore.extern_mod_stmt_cnum(item.id) .unwrap_or(LOCAL_CRATE), - name: name, + name, path: p.map(|x|x.to_string()), vis: item.vis.clone(), attrs: item.attrs.clone(), @@ -412,7 +408,7 @@ pub fn visit_item(&mut self, item: &hir::Item, } om.imports.push(Import { - name: name, + name, id: item.id, vis: item.vis.clone(), attrs: item.attrs.clone(), @@ -442,7 +438,7 @@ pub fn visit_item(&mut self, item: &hir::Item, let t = Typedef { ty: ty.clone(), gen: gen.clone(), - name: name, + name, id: item.id, attrs: item.attrs.clone(), whence: item.span, @@ -458,7 +454,7 @@ pub fn visit_item(&mut self, item: &hir::Item, mutability: mut_.clone(), expr: exp.clone(), id: item.id, - name: name, + name, attrs: item.attrs.clone(), whence: item.span, vis: item.vis.clone(), @@ -472,7 +468,7 @@ pub fn visit_item(&mut self, item: &hir::Item, type_: ty.clone(), expr: exp.clone(), id: item.id, - name: name, + name, attrs: item.attrs.clone(), whence: item.span, vis: item.vis.clone(), @@ -486,9 +482,9 @@ pub fn visit_item(&mut self, item: &hir::Item, .map(|ti| self.cx.tcx.hir.trait_item(ti.id).clone()) .collect(); let t = Trait { - unsafety: unsafety, - name: name, - items: items, + unsafety, + name, + items, generics: gen.clone(), bounds: b.iter().cloned().collect(), id: item.id, @@ -515,13 +511,13 @@ pub fn visit_item(&mut self, item: &hir::Item, .map(|ii| self.cx.tcx.hir.impl_item(ii.id).clone()) .collect(); let i = Impl { - unsafety: unsafety, - polarity: polarity, - defaultness: defaultness, + unsafety, + polarity, + defaultness, generics: gen.clone(), trait_: tr.clone(), for_: ty.clone(), - items: items, + items, attrs: item.attrs.clone(), id: item.id, whence: item.span, @@ -536,7 +532,7 @@ pub fn visit_item(&mut self, item: &hir::Item, // See comment above about ItemImpl. if !self.inlining { let i = DefaultImpl { - unsafety: unsafety, + unsafety, trait_: trait_ref.clone(), id: item.id, attrs: item.attrs.clone(), @@ -559,7 +555,7 @@ fn visit_local_macro(&self, def: &hir::MacroDef) -> Macro { attrs: def.attrs.clone(), name: def.name, whence: def.span, - matchers: matchers, + matchers, stab: self.stability(def.id), depr: self.deprecation(def.id), imported_from: None,