}
cx.struct_span_lint(self.lint(), MultiSpan::from(vec![spans.0, spans.1]), |lint| {
- let span_msg = format!("unnecessary {} around {}", Self::DELIM_STR, msg);
- let mut err = lint.build(&span_msg);
let replacement = vec![
(spans.0, if keep_space.0 { " ".into() } else { "".into() }),
(spans.1, if keep_space.1 { " ".into() } else { "".into() }),
];
- let suggestion = format!("remove these {}", Self::DELIM_STR);
- err.multipart_suggestion(&suggestion, replacement, Applicability::MachineApplicable);
- err.emit();
+ lint.build(fluent::lint::unused_delim)
+ .set_arg("delim", Self::DELIM_STR)
+ .set_arg("item", msg)
+ .multipart_suggestion(
+ fluent::lint::suggestion,
+ replacement,
+ Applicability::MachineApplicable,
+ )
+ .emit();
});
}
};
cx.struct_span_lint(UNUSED_IMPORT_BRACES, item.span, |lint| {
- lint.build(&format!("braces around {} is unnecessary", node_name)).emit();
+ lint.build(fluent::lint::unused_import_braces).set_arg("node", node_name).emit();
});
}
}
for adj in cx.typeck_results().expr_adjustments(e) {
if let adjustment::Adjust::Borrow(adjustment::AutoBorrow::Ref(_, m)) = adj.kind {
cx.struct_span_lint(UNUSED_ALLOCATION, e.span, |lint| {
- let msg = match m {
- adjustment::AutoBorrowMutability::Not => {
- "unnecessary allocation, use `&` instead"
- }
+ lint.build(match m {
+ adjustment::AutoBorrowMutability::Not => fluent::lint::unused_allocation,
adjustment::AutoBorrowMutability::Mut { .. } => {
- "unnecessary allocation, use `&mut` instead"
+ fluent::lint::unused_allocation_mut
}
- };
- lint.build(msg).emit();
+ })
+ .emit();
});
}
}