about summary refs log tree commit diff
diff options
context:
space:
mode:
authorCamelid <camelidcamel@gmail.com>2021-03-28 17:22:45 -0700
committerCamelid <camelidcamel@gmail.com>2021-03-28 17:27:19 -0700
commit141df6f60e28c83711db5a2a94d5c4ff5e9aecaa (patch)
tree49fd294004ffff6738ef48ded5d1acc11ec865f6
parent5497f158af58bf6420222472bbaeeae78081d26f (diff)
downloadrust-141df6f60e28c83711db5a2a94d5c4ff5e9aecaa.tar.gz
rust-141df6f60e28c83711db5a2a94d5c4ff5e9aecaa.zip
Inline `find_suffix` closure that's only used once
-rw-r--r--src/librustdoc/passes/collect_intra_doc_links.rs32
1 files changed, 14 insertions, 18 deletions
diff --git a/src/librustdoc/passes/collect_intra_doc_links.rs b/src/librustdoc/passes/collect_intra_doc_links.rs
index 417637d2384..55978ca551b 100644
--- a/src/librustdoc/passes/collect_intra_doc_links.rs
+++ b/src/librustdoc/passes/collect_intra_doc_links.rs
@@ -1549,23 +1549,6 @@ impl Disambiguator {
     fn from_str(link: &str) -> Result<Option<(Self, &str)>, (String, Range<usize>)> {
         use Disambiguator::{Kind, Namespace as NS, Primitive};
 
-        let find_suffix = || {
-            let suffixes = [
-                ("!()", DefKind::Macro(MacroKind::Bang)),
-                ("()", DefKind::Fn),
-                ("!", DefKind::Macro(MacroKind::Bang)),
-            ];
-            for &(suffix, kind) in &suffixes {
-                if let Some(link) = link.strip_suffix(suffix) {
-                    // Avoid turning `!` or `()` into an empty string
-                    if !link.is_empty() {
-                        return Some((Kind(kind), link));
-                    }
-                }
-            }
-            None
-        };
-
         if let Some(idx) = link.find('@') {
             let (prefix, rest) = link.split_at(idx);
             let d = match prefix {
@@ -1586,7 +1569,20 @@ impl Disambiguator {
             };
             Ok(Some((d, &rest[1..])))
         } else {
-            Ok(find_suffix())
+            let suffixes = [
+                ("!()", DefKind::Macro(MacroKind::Bang)),
+                ("()", DefKind::Fn),
+                ("!", DefKind::Macro(MacroKind::Bang)),
+            ];
+            for &(suffix, kind) in &suffixes {
+                if let Some(link) = link.strip_suffix(suffix) {
+                    // Avoid turning `!` or `()` into an empty string
+                    if !link.is_empty() {
+                        return Ok(Some((Kind(kind), link)));
+                    }
+                }
+            }
+            Ok(None)
         }
     }