@@ -95,7 +95,7 @@ impl LateLintPass<'_> for EmptyWithBrackets {
9595 if let ItemKind :: Struct ( ident, var_data, ..) = & item. kind
9696 && has_brackets ( var_data)
9797 && let span_after_ident = item. span . with_lo ( ident. span . hi ( ) )
98- && has_no_fields ( cx, Some ( var_data) , span_after_ident)
98+ && has_no_fields ( cx, var_data, span_after_ident)
9999 {
100100 span_lint_and_then (
101101 cx,
@@ -118,7 +118,7 @@ impl LateLintPass<'_> for EmptyWithBrackets {
118118 // the span of the parentheses/braces
119119 let span_after_ident = variant. span . with_lo ( variant. ident . span . hi ( ) ) ;
120120
121- if has_no_fields ( cx, Some ( & variant. data ) , span_after_ident) {
121+ if has_no_fields ( cx, & variant. data , span_after_ident) {
122122 match variant. data {
123123 VariantData :: Struct { .. } => {
124124 // Empty struct variants can be linted immediately
@@ -251,13 +251,8 @@ fn has_brackets(var_data: &VariantData<'_>) -> bool {
251251 !matches ! ( var_data, VariantData :: Unit ( ..) )
252252}
253253
254- fn has_no_fields ( cx : & LateContext < ' _ > , var_data_opt : Option < & VariantData < ' _ > > , braces_span : Span ) -> bool {
255- if let Some ( var_data) = var_data_opt
256- && !var_data. fields ( ) . is_empty ( )
257- {
258- return false ;
259- }
260-
254+ fn has_no_fields ( cx : & LateContext < ' _ > , var_data : & VariantData < ' _ > , braces_span : Span ) -> bool {
255+ var_data. fields ( ) . is_empty ( ) &&
261256 // there might still be field declarations hidden from the AST
262257 // (conditionally compiled code using #[cfg(..)])
263258 !span_contains_cfg ( cx, braces_span)
0 commit comments