Clippy perf warnings

Removes redundant clones
This commit is contained in:
kjeremy 2020-07-06 17:13:55 -04:00
parent d4bc2f25de
commit ebdee366b0
6 changed files with 9 additions and 16 deletions

View file

@ -369,7 +369,7 @@ impl HirDisplay for ApplicationTy {
let data = (*datas)
.as_ref()
.map(|rpit| rpit.impl_traits[idx as usize].bounds.clone());
data.clone().subst(&self.parameters)
data.subst(&self.parameters)
}
};
write!(f, "impl ")?;
@ -456,7 +456,7 @@ impl HirDisplay for Ty {
let data = (*datas)
.as_ref()
.map(|rpit| rpit.impl_traits[idx as usize].bounds.clone());
data.clone().subst(&opaque_ty.parameters)
data.subst(&opaque_ty.parameters)
}
};
write!(f, "impl ")?;

View file

@ -85,10 +85,8 @@ impl<'a> InferenceContext<'a> {
ctor: TypeCtor::Tuple { cardinality: num_args as u16 },
parameters,
});
let substs = Substs::build_for_generics(&generic_params)
.push(ty.clone())
.push(arg_ty.clone())
.build();
let substs =
Substs::build_for_generics(&generic_params).push(ty.clone()).push(arg_ty).build();
let trait_env = Arc::clone(&self.trait_env);
let implements_fn_trait =

View file

@ -891,7 +891,7 @@ impl Ty {
let data = (*it)
.as_ref()
.map(|rpit| rpit.impl_traits[idx as usize].bounds.clone());
data.clone().subst(&opaque_ty.parameters)
data.subst(&opaque_ty.parameters)
})
}
};

View file

@ -720,8 +720,7 @@ fn assoc_type_bindings_from_type_bound<'a>(
None => return SmallVec::<[GenericPredicate; 1]>::new(),
Some(t) => t,
};
let projection_ty =
ProjectionTy { associated_ty, parameters: super_trait_ref.substs.clone() };
let projection_ty = ProjectionTy { associated_ty, parameters: super_trait_ref.substs };
let mut preds = SmallVec::with_capacity(
binding.type_ref.as_ref().map_or(0, |_| 1) + binding.bounds.len(),
);

View file

@ -299,12 +299,8 @@ impl ast::UseTree {
Some(it) => it,
None => return self.clone(),
};
let use_tree = make::use_tree(
suffix.clone(),
self.use_tree_list(),
self.alias(),
self.star_token().is_some(),
);
let use_tree =
make::use_tree(suffix, self.use_tree_list(), self.alias(), self.star_token().is_some());
let nested = make::use_tree_list(iter::once(use_tree));
return make::use_tree(prefix.clone(), Some(nested), None, false);

View file

@ -62,7 +62,7 @@ impl Fixture {
let components = meta.split_ascii_whitespace().collect::<Vec<_>>();
let path = components[0].to_string();
assert!(path.starts_with("/"));
assert!(path.starts_with('/'));
let mut krate = None;
let mut deps = Vec::new();