1
Fork 0

Remove a Clean impl for a tuple (5)

This commit is contained in:
Noah Lev 2021-12-03 13:44:47 -08:00
parent 9b51072309
commit c39ef72d74

View file

@ -790,22 +790,23 @@ fn clean_function(
Function { decl, generics, header: sig.header } Function { decl, generics, header: sig.header }
} }
impl<'a> Clean<Arguments> for (&'a [hir::Ty<'a>], &'a [Ident]) { fn clean_args_from_types_and_names(
fn clean(&self, cx: &mut DocContext<'_>) -> Arguments { cx: &mut DocContext<'_>,
Arguments { types: &[hir::Ty<'_>],
values: self names: &[Ident],
.0 ) -> Arguments {
.iter() Arguments {
.enumerate() values: types
.map(|(i, ty)| { .iter()
let mut name = self.1.get(i).map_or(kw::Empty, |ident| ident.name); .enumerate()
if name.is_empty() { .map(|(i, ty)| {
name = kw::Underscore; let mut name = names.get(i).map_or(kw::Empty, |ident| ident.name);
} if name.is_empty() {
Argument { name, type_: ty.clean(cx), is_const: false } name = kw::Underscore;
}) }
.collect(), Argument { name, type_: ty.clean(cx), is_const: false }
} })
.collect(),
} }
} }
@ -916,7 +917,7 @@ impl Clean<Item> for hir::TraitItem<'_> {
let (generics, decl) = enter_impl_trait(cx, |cx| { let (generics, decl) = enter_impl_trait(cx, |cx| {
// NOTE: generics must be cleaned before args // NOTE: generics must be cleaned before args
let generics = self.generics.clean(cx); let generics = self.generics.clean(cx);
let args = (sig.decl.inputs, names).clean(cx); let args = clean_args_from_types_and_names(cx, sig.decl.inputs, names);
let decl = clean_fn_decl_with_args(cx, sig.decl, args); let decl = clean_fn_decl_with_args(cx, sig.decl, args);
(generics, decl) (generics, decl)
}); });
@ -1714,7 +1715,7 @@ impl Clean<BareFunctionDecl> for hir::BareFnTy<'_> {
let (generic_params, decl) = enter_impl_trait(cx, |cx| { let (generic_params, decl) = enter_impl_trait(cx, |cx| {
// NOTE: generics must be cleaned before args // NOTE: generics must be cleaned before args
let generic_params = self.generic_params.iter().map(|x| x.clean(cx)).collect(); let generic_params = self.generic_params.iter().map(|x| x.clean(cx)).collect();
let args = (self.decl.inputs, self.param_names).clean(cx); let args = clean_args_from_types_and_names(cx, self.decl.inputs, self.param_names);
let decl = clean_fn_decl_with_args(cx, self.decl, args); let decl = clean_fn_decl_with_args(cx, self.decl, args);
(generic_params, decl) (generic_params, decl)
}); });
@ -2034,7 +2035,7 @@ impl Clean<Item> for (&hir::ForeignItem<'_>, Option<Symbol>) {
let (generics, decl) = enter_impl_trait(cx, |cx| { let (generics, decl) = enter_impl_trait(cx, |cx| {
// NOTE: generics must be cleaned before args // NOTE: generics must be cleaned before args
let generics = generics.clean(cx); let generics = generics.clean(cx);
let args = (decl.inputs, names).clean(cx); let args = clean_args_from_types_and_names(cx, decl.inputs, names);
let decl = clean_fn_decl_with_args(cx, decl, args); let decl = clean_fn_decl_with_args(cx, decl, args);
(generics, decl) (generics, decl)
}); });