couple of clippy::perf fixes

This commit is contained in:
Matthias Krüger 2022-04-13 22:18:28 +02:00
parent 0d13f6afeb
commit bbd7ce6904
6 changed files with 6 additions and 7 deletions

View file

@ -372,7 +372,6 @@ fn build_union_fields_for_direct_tag_generator<'ll, 'tcx>(
// Build the type node for each field. // Build the type node for each field.
let variant_field_infos: SmallVec<VariantFieldInfo<'ll>> = variant_range let variant_field_infos: SmallVec<VariantFieldInfo<'ll>> = variant_range
.clone()
.map(|variant_index| { .map(|variant_index| {
let variant_struct_type_di_node = super::build_generator_variant_struct_type_di_node( let variant_struct_type_di_node = super::build_generator_variant_struct_type_di_node(
cx, cx,

View file

@ -1208,7 +1208,7 @@ impl HandlerInner {
(0, 0) => return, (0, 0) => return,
(0, _) => self.emitter.emit_diagnostic(&Diagnostic::new( (0, _) => self.emitter.emit_diagnostic(&Diagnostic::new(
Level::Warning, Level::Warning,
DiagnosticMessage::Str(warnings.to_owned()), DiagnosticMessage::Str(warnings),
)), )),
(_, 0) => { (_, 0) => {
let _ = self.fatal(&errors); let _ = self.fatal(&errors);

View file

@ -589,7 +589,7 @@ impl TtParser {
(_, 0) => { (_, 0) => {
// Dump all possible `next_mps` into `cur_mps` for the next iteration. Then // Dump all possible `next_mps` into `cur_mps` for the next iteration. Then
// process the next token. // process the next token.
self.cur_mps.extend(self.next_mps.drain(..)); self.cur_mps.append(&mut self.next_mps);
parser.to_mut().bump(); parser.to_mut().bump();
} }

View file

@ -844,7 +844,7 @@ fn non_exhaustive_match<'p, 'tcx>(
format!( format!(
"{}{}{} => todo!()", "{}{}{} => todo!()",
comma, comma,
snippet.strip_prefix(",").unwrap_or(&snippet), snippet.strip_prefix(',').unwrap_or(&snippet),
pattern pattern
), ),
)); ));

View file

@ -2724,9 +2724,9 @@ impl<'a, 'tcx> InferCtxtExt<'tcx> for InferCtxt<'a, 'tcx> {
&format!( &format!(
"consider annotating `{}` with `#[derive({})]`", "consider annotating `{}` with `#[derive({})]`",
trait_pred.skip_binder().self_ty(), trait_pred.skip_binder().self_ty(),
diagnostic_name.to_string(), diagnostic_name,
), ),
format!("#[derive({})]\n", diagnostic_name.to_string()), format!("#[derive({})]\n", diagnostic_name),
Applicability::MaybeIncorrect, Applicability::MaybeIncorrect,
); );
} }

View file

@ -215,7 +215,7 @@ impl<'a, 'tcx> DocVisitor for InvalidHtmlTagsLinter<'a, 'tcx> {
// We don't try to detect stuff `<like, this>` because that's not valid HTML, // We don't try to detect stuff `<like, this>` because that's not valid HTML,
// and we don't try to detect stuff `<like this>` because that's not valid Rust. // and we don't try to detect stuff `<like this>` because that's not valid Rust.
if let Some(Some(generics_start)) = (is_open_tag if let Some(Some(generics_start)) = (is_open_tag
&& dox[..range.end].ends_with(">")) && dox[..range.end].ends_with('>'))
.then(|| extract_path_backwards(&dox, range.start)) .then(|| extract_path_backwards(&dox, range.start))
{ {
let generics_sp = match super::source_span_for_markdown_range( let generics_sp = match super::source_span_for_markdown_range(