use clippy_utils::diagnostics::span_lint_hir_and_then;
use rustc_errors::Applicability;
use rustc_hir as hir;
use rustc_lint::LateContext;
use rustc_span::Span;
use super::MACRO_TRAILING_COMMA;
pub(super) fn emit_insert(lint_context: &LateContext<'_>, hir_id: hir::HirId, insert_at: Span) {
span_lint_hir_and_then(
lint_context,
MACRO_TRAILING_COMMA,
hir_id,
insert_at,
"multi-line macro invocation should end with a trailing comma",
|diag| {
diag.span_suggestion(
insert_at,
"add a trailing comma",
",",
Applicability::MachineApplicable,
);
},
);
}
pub(super) fn emit_remove(lint_context: &LateContext<'_>, hir_id: hir::HirId, comma_span: Span) {
span_lint_hir_and_then(
lint_context,
MACRO_TRAILING_COMMA,
hir_id,
comma_span,
"single-line macro invocation should not end with a trailing comma",
|diag| {
diag.span_suggestion(
comma_span,
"remove the trailing comma",
"",
Applicability::MachineApplicable,
);
},
);
}