]> git.lizzy.rs Git - rust.git/blobdiff - src/librustdoc/visit_ast.rs
Auto merge of #43710 - zackmdavis:field_init_shorthand_power_slam, r=Mark-Simulacrum
[rust.git] / src / librustdoc / visit_ast.rs
index 39ebe490d0eb28a064821bde1f20c3e37b638db2..e3426fba1bca18426e8aa8fd1e9bbb34216bedee 100644 (file)
@@ -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<ast::Attribu
                     };
 
                     om.macros.push(Macro {
-                        def_id: def_id,
+                        def_id,
                         attrs: def.attrs.clone().into(),
                         name: def.ident.name,
                         whence: def.span,
-                        matchers: matchers,
+                        matchers,
                         stab: self.stability(def.id),
                         depr: self.deprecation(def.id),
                         imported_from: Some(imported_from),
@@ -329,25 +329,21 @@ fn inherits_doc_hidden(cx: &core::DocContext, mut node: ast::NodeId) -> 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,