From 715c19e75e0e2a88f6c0a5ec8c13ee77737c4798 Mon Sep 17 00:00:00 2001 From: Yusuke Tanaka Date: Sat, 13 Feb 2021 01:13:50 +0900 Subject: [PATCH] Refactor `get_word_attr` to return only `Option` --- src/librustdoc/clean/mod.rs | 3 ++- src/librustdoc/clean/types.rs | 9 +++------ 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/src/librustdoc/clean/mod.rs b/src/librustdoc/clean/mod.rs index 331bb2a73f9..9a4a9e19e22 100644 --- a/src/librustdoc/clean/mod.rs +++ b/src/librustdoc/clean/mod.rs @@ -2163,7 +2163,8 @@ fn clean_use_statement( return Vec::new(); } - let (doc_meta_item, please_inline) = import.attrs.lists(sym::doc).get_word_attr(sym::inline); + let doc_meta_item = import.attrs.lists(sym::doc).get_word_attr(sym::inline); + let please_inline = doc_meta_item.is_some(); let pub_underscore = import.vis.node.is_pub() && name == kw::Underscore; if pub_underscore && please_inline { diff --git a/src/librustdoc/clean/types.rs b/src/librustdoc/clean/types.rs index 754f1c2eeeb..a691819ab77 100644 --- a/src/librustdoc/clean/types.rs +++ b/src/librustdoc/clean/types.rs @@ -438,7 +438,7 @@ impl AttributesExt for [ast::Attribute] { crate trait NestedAttributesExt { /// Returns `true` if the attribute list contains a specific `Word` fn has_word(self, word: Symbol) -> bool; - fn get_word_attr(self, word: Symbol) -> (Option, bool); + fn get_word_attr(self, word: Symbol) -> Option; } impl + IntoIterator> @@ -448,11 +448,8 @@ impl + IntoIterator (Option, bool) { - match self.find(|attr| attr.is_word() && attr.has_name(word)) { - Some(a) => (Some(a), true), - None => (None, false), - } + fn get_word_attr(mut self, word: Symbol) -> Option { + self.find(|attr| attr.is_word() && attr.has_name(word)) } }