X-Git-Url: https://git.lizzy.rs/?a=blobdiff_plain;f=src%2Flibrustdoc%2Ffold.rs;h=cd0f44e5696fec3e2038dcb5d5a76f24b8fbfbb5;hb=9e86a434a770b453ded7dabd3203efc9c61eb2e5;hp=65cd71307aa3f987be090d453666f395609fc37a;hpb=987797bfe17ab8b75a9195d047c32264ffef8852;p=rust.git diff --git a/src/librustdoc/fold.rs b/src/librustdoc/fold.rs index 65cd71307aa..cd0f44e5696 100644 --- a/src/librustdoc/fold.rs +++ b/src/librustdoc/fold.rs @@ -20,22 +20,28 @@ fn fold_inner_recur(&mut self, kind: ItemKind) -> ItemKind { StructItem(mut i) => { let num_fields = i.fields.len(); i.fields = i.fields.into_iter().filter_map(|x| self.fold_item(x)).collect(); - i.fields_stripped |= - num_fields != i.fields.len() || i.fields.iter().any(|f| f.is_stripped()); + if !i.fields_stripped { + i.fields_stripped = + num_fields != i.fields.len() || i.fields.iter().any(|f| f.is_stripped()); + } StructItem(i) } UnionItem(mut i) => { let num_fields = i.fields.len(); i.fields = i.fields.into_iter().filter_map(|x| self.fold_item(x)).collect(); - i.fields_stripped |= - num_fields != i.fields.len() || i.fields.iter().any(|f| f.is_stripped()); + if !i.fields_stripped { + i.fields_stripped = + num_fields != i.fields.len() || i.fields.iter().any(|f| f.is_stripped()); + } UnionItem(i) } EnumItem(mut i) => { let num_variants = i.variants.len(); i.variants = i.variants.into_iter().filter_map(|x| self.fold_item(x)).collect(); - i.variants_stripped |= - num_variants != i.variants.len() || i.variants.iter().any(|f| f.is_stripped()); + if !i.variants_stripped { + i.variants_stripped = num_variants != i.variants.len() + || i.variants.iter().any(|f| f.is_stripped()); + } EnumItem(i) } TraitItem(mut i) => { @@ -50,8 +56,10 @@ fn fold_inner_recur(&mut self, kind: ItemKind) -> ItemKind { Variant::Struct(mut j) => { let num_fields = j.fields.len(); j.fields = j.fields.into_iter().filter_map(|x| self.fold_item(x)).collect(); - j.fields_stripped |= - num_fields != j.fields.len() || j.fields.iter().any(|f| f.is_stripped()); + if !j.fields_stripped { + j.fields_stripped = num_fields != j.fields.len() + || j.fields.iter().any(|f| f.is_stripped()); + } VariantItem(Variant::Struct(j)) } Variant::Tuple(fields) => {