|
| 1 | +use clippy_utils::attrs::is_doc_hidden; |
1 | 2 | use clippy_utils::diagnostics::span_lint_and_then; |
2 | 3 | use clippy_utils::meets_msrv; |
3 | 4 | use clippy_utils::source::snippet_opt; |
4 | 5 | use if_chain::if_chain; |
5 | | -use rustc_ast::ast::{Attribute, FieldDef, Item, ItemKind, Variant, VariantData, VisibilityKind}; |
6 | | -use rustc_attr as attr; |
| 6 | +use rustc_ast::ast::{FieldDef, Item, ItemKind, Variant, VariantData, VisibilityKind}; |
7 | 7 | use rustc_errors::Applicability; |
8 | 8 | use rustc_lint::{EarlyContext, EarlyLintPass}; |
9 | 9 | use rustc_semver::RustcVersion; |
@@ -102,15 +102,7 @@ fn check_manual_non_exhaustive_enum(cx: &EarlyContext<'_>, item: &Item, variants |
102 | 102 | fn is_non_exhaustive_marker(variant: &Variant) -> bool { |
103 | 103 | matches!(variant.data, VariantData::Unit(_)) |
104 | 104 | && variant.ident.as_str().starts_with('_') |
105 | | - && variant.attrs.iter().any(|a| is_doc_hidden(a)) |
106 | | - } |
107 | | - |
108 | | - fn is_doc_hidden(attr: &Attribute) -> bool { |
109 | | - attr.has_name(sym::doc) |
110 | | - && match attr.meta_item_list() { |
111 | | - Some(l) => attr::list_contains_name(&l, sym::hidden), |
112 | | - None => false, |
113 | | - } |
| 105 | + && is_doc_hidden(&variant.attrs) |
114 | 106 | } |
115 | 107 |
|
116 | 108 | let mut markers = variants.iter().filter(|v| is_non_exhaustive_marker(v)); |
|
0 commit comments