about summary refs log tree commit diff
diff options
context:
space:
mode:
authorNoah Lev <camelidcamel@gmail.com>2021-11-01 15:46:08 -0700
committerNoah Lev <camelidcamel@gmail.com>2021-11-01 16:15:46 -0700
commit8e4bcdf84b2f07d0a3e0aac21b85b54b14031f33 (patch)
tree4a0822b3dc11e58e0c5b177c90453e6d0e6621b9
parentc03cab3fd07ab070d6ec0fa77655ad8d3a85a372 (diff)
downloadrust-8e4bcdf84b2f07d0a3e0aac21b85b54b14031f33.tar.gz
rust-8e4bcdf84b2f07d0a3e0aac21b85b54b14031f33.zip
List all cases explicitly in `Doc{Folder,Visitor}`
-rw-r--r--src/librustdoc/fold.rs22
-rw-r--r--src/librustdoc/passes/collect_trait_impls.rs3
-rw-r--r--src/librustdoc/passes/html_tags.rs4
-rw-r--r--src/librustdoc/visit.rs22
4 files changed, 45 insertions, 6 deletions
diff --git a/src/librustdoc/fold.rs b/src/librustdoc/fold.rs
index e8069f39f45..65cd71307aa 100644
--- a/src/librustdoc/fold.rs
+++ b/src/librustdoc/fold.rs
@@ -60,8 +60,26 @@ crate trait DocFolder: Sized {
                 }
                 Variant::CLike => VariantItem(Variant::CLike),
             },
-            // FIXME: list all cases explicitly
-            x => x,
+            ExternCrateItem { src: _ }
+            | ImportItem(_)
+            | FunctionItem(_)
+            | TypedefItem(_, _)
+            | OpaqueTyItem(_)
+            | StaticItem(_)
+            | ConstantItem(_)
+            | TraitAliasItem(_)
+            | TyMethodItem(_)
+            | MethodItem(_, _)
+            | StructFieldItem(_)
+            | ForeignFunctionItem(_)
+            | ForeignStaticItem(_)
+            | ForeignTypeItem
+            | MacroItem(_)
+            | ProcMacroItem(_)
+            | PrimitiveItem(_)
+            | AssocConstItem(_, _)
+            | AssocTypeItem(_, _)
+            | KeywordItem(_) => kind,
         }
     }
 
diff --git a/src/librustdoc/passes/collect_trait_impls.rs b/src/librustdoc/passes/collect_trait_impls.rs
index 000fe01f5ad..77513b05ff2 100644
--- a/src/librustdoc/passes/collect_trait_impls.rs
+++ b/src/librustdoc/passes/collect_trait_impls.rs
@@ -1,6 +1,7 @@
 use super::Pass;
+use crate::clean::*;
 use crate::core::DocContext;
-use crate::{clean::*, visit::DocVisitor};
+use crate::visit::DocVisitor;
 
 use rustc_data_structures::fx::{FxHashMap, FxHashSet};
 use rustc_hir::def_id::DefId;
diff --git a/src/librustdoc/passes/html_tags.rs b/src/librustdoc/passes/html_tags.rs
index da9d1305b93..56b222d8932 100644
--- a/src/librustdoc/passes/html_tags.rs
+++ b/src/librustdoc/passes/html_tags.rs
@@ -3,9 +3,11 @@ use crate::clean::*;
 use crate::core::DocContext;
 use crate::html::markdown::main_body_opts;
 use crate::visit::DocVisitor;
-use core::ops::Range;
+
 use pulldown_cmark::{Event, Parser, Tag};
+
 use std::iter::Peekable;
+use std::ops::Range;
 use std::str::CharIndices;
 
 crate const CHECK_INVALID_HTML_TAGS: Pass = Pass {
diff --git a/src/librustdoc/visit.rs b/src/librustdoc/visit.rs
index 44129548d1c..df4d1558ebd 100644
--- a/src/librustdoc/visit.rs
+++ b/src/librustdoc/visit.rs
@@ -23,8 +23,26 @@ crate trait DocVisitor: Sized {
                 Variant::Tuple(fields) => fields.iter().for_each(|x| self.visit_item(x)),
                 Variant::CLike => {}
             },
-            // FIXME: list all cases explicitly
-            _ => return,
+            ExternCrateItem { src: _ }
+            | ImportItem(_)
+            | FunctionItem(_)
+            | TypedefItem(_, _)
+            | OpaqueTyItem(_)
+            | StaticItem(_)
+            | ConstantItem(_)
+            | TraitAliasItem(_)
+            | TyMethodItem(_)
+            | MethodItem(_, _)
+            | StructFieldItem(_)
+            | ForeignFunctionItem(_)
+            | ForeignStaticItem(_)
+            | ForeignTypeItem
+            | MacroItem(_)
+            | ProcMacroItem(_)
+            | PrimitiveItem(_)
+            | AssocConstItem(_, _)
+            | AssocTypeItem(_, _)
+            | KeywordItem(_) => {}
         }
     }