Skip to content

Commit e366977

Browse files
committed
Change HasSession to HasSourceMap
1 parent a53acef commit e366977

File tree

7 files changed

+101
-95
lines changed

7 files changed

+101
-95
lines changed

clippy_lints/src/bool_to_int_with_if.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
use clippy_utils::diagnostics::span_lint_and_then;
2-
use clippy_utils::source::HasSession;
32
use clippy_utils::sugg::Sugg;
43
use clippy_utils::{higher, is_else_clause, is_in_const_context, span_contains_comment};
54
use rustc_ast::LitKind;
@@ -59,7 +58,7 @@ impl<'tcx> LateLintPass<'tcx> for BoolToIntWithIf {
5958
&& !is_in_const_context(cx)
6059
{
6160
let ty = cx.typeck_results().expr_ty(then);
62-
let mut applicability = if span_contains_comment(cx.sess().source_map(), expr.span) {
61+
let mut applicability = if span_contains_comment(cx, expr.span) {
6362
Applicability::MaybeIncorrect
6463
} else {
6564
Applicability::MachineApplicable

clippy_lints/src/if_not_else.rs

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use clippy_utils::consts::{ConstEvalCtxt, Constant};
22
use clippy_utils::diagnostics::{span_lint_and_help, span_lint_and_sugg};
33
use clippy_utils::is_else_clause;
4-
use clippy_utils::source::{HasSession, indent_of, reindent_multiline, snippet};
4+
use clippy_utils::source::{indent_of, reindent_multiline, snippet};
55
use rustc_errors::Applicability;
66
use rustc_hir::{BinOpKind, Expr, ExprKind, UnOp};
77
use rustc_lint::{LateContext, LateLintPass};
@@ -99,30 +99,30 @@ impl LateLintPass<'_> for IfNotElse {
9999
}
100100
}
101101

102-
fn make_sugg<'a>(
103-
sess: &impl HasSession,
104-
cond_kind: &'a ExprKind<'a>,
102+
fn make_sugg(
103+
cx: &LateContext<'_>,
104+
cond_kind: &ExprKind<'_>,
105105
cond_inner: Span,
106106
els_span: Span,
107-
default: &'a str,
107+
default: &str,
108108
indent_relative_to: Option<Span>,
109109
) -> String {
110-
let cond_inner_snip = snippet(sess, cond_inner, default);
111-
let els_snip = snippet(sess, els_span, default);
112-
let indent = indent_relative_to.and_then(|s| indent_of(sess, s));
110+
let cond_inner_snip = snippet(cx, cond_inner, default);
111+
let els_snip = snippet(cx, els_span, default);
112+
let indent = indent_relative_to.and_then(|s| indent_of(cx, s));
113113

114114
let suggestion = match cond_kind {
115115
ExprKind::Unary(UnOp::Not, cond_rest) => {
116116
format!(
117117
"if {} {} else {}",
118-
snippet(sess, cond_rest.span, default),
118+
snippet(cx, cond_rest.span, default),
119119
els_snip,
120120
cond_inner_snip
121121
)
122122
},
123123
ExprKind::Binary(_, lhs, rhs) => {
124-
let lhs_snip = snippet(sess, lhs.span, default);
125-
let rhs_snip = snippet(sess, rhs.span, default);
124+
let lhs_snip = snippet(cx, lhs.span, default);
125+
let rhs_snip = snippet(cx, rhs.span, default);
126126

127127
format!("if {lhs_snip} == {rhs_snip} {els_snip} else {cond_inner_snip}")
128128
},

clippy_lints/src/loops/manual_slice_fill.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use clippy_utils::diagnostics::span_lint_and_sugg;
22
use clippy_utils::eager_or_lazy::switch_to_eager_eval;
33
use clippy_utils::msrvs::{self, Msrv};
4-
use clippy_utils::source::{HasSession, snippet_with_applicability};
4+
use clippy_utils::source::snippet_with_applicability;
55
use clippy_utils::ty::implements_trait;
66
use clippy_utils::visitors::is_local_used;
77
use clippy_utils::{higher, peel_blocks_with_stmt, span_contains_comment};
@@ -91,7 +91,7 @@ fn sugg<'tcx>(
9191
slice_span: rustc_span::Span,
9292
assignval_span: rustc_span::Span,
9393
) {
94-
let mut app = if span_contains_comment(cx.sess().source_map(), body.span) {
94+
let mut app = if span_contains_comment(cx, body.span) {
9595
Applicability::MaybeIncorrect // Comments may be informational.
9696
} else {
9797
Applicability::MachineApplicable

clippy_lints/src/manual_abs_diff.rs

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@ use clippy_config::Conf;
22
use clippy_utils::diagnostics::span_lint_and_then;
33
use clippy_utils::higher::If;
44
use clippy_utils::msrvs::{self, Msrv};
5-
use clippy_utils::source::HasSession as _;
65
use clippy_utils::sugg::Sugg;
76
use clippy_utils::ty::is_type_diagnostic_item;
87
use clippy_utils::{eq_expr_value, peel_blocks, span_contains_comment};
@@ -76,10 +75,7 @@ impl<'tcx> LateLintPass<'tcx> for ManualAbsDiff {
7675
(a, b) = (b, a);
7776
}
7877
let applicability = {
79-
let source_map = cx.sess().source_map();
80-
if span_contains_comment(source_map, if_expr.then.span)
81-
|| span_contains_comment(source_map, r#else.span)
82-
{
78+
if span_contains_comment(cx, if_expr.then.span) || span_contains_comment(cx, r#else.span) {
8379
Applicability::MaybeIncorrect
8480
} else {
8581
Applicability::MachineApplicable

clippy_lints/src/redundant_pub_crate.rs

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
use clippy_utils::diagnostics::span_lint_and_then;
2-
use clippy_utils::source::HasSession;
32
use rustc_errors::Applicability;
43
use rustc_hir::def::{DefKind, Res};
54
use rustc_hir::{Item, ItemKind};
@@ -50,7 +49,7 @@ impl<'tcx> LateLintPass<'tcx> for RedundantPubCrate {
5049
&& !cx.effective_visibilities.is_exported(item.owner_id.def_id)
5150
&& self.is_exported.last() == Some(&false)
5251
&& is_not_macro_export(item)
53-
&& !item.span.in_external_macro(cx.sess().source_map())
52+
&& !item.span.in_external_macro(cx.tcx.sess.source_map())
5453
{
5554
let span = item
5655
.kind

clippy_utils/src/lib.rs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -129,6 +129,7 @@ use visitors::{Visitable, for_each_unconsumed_temporary};
129129

130130
use crate::consts::{ConstEvalCtxt, Constant, mir_to_const};
131131
use crate::higher::Range;
132+
use crate::source::HasSourceMap;
132133
use crate::ty::{adt_and_variant_of_res, can_partially_move_ty, expr_sig, is_copy, is_recursively_primitive_type};
133134
use crate::visitors::for_each_expr_without_closures;
134135
use rustc_middle::hir::nested_filter;
@@ -3067,8 +3068,8 @@ pub fn tokenize_with_text(s: &str) -> impl Iterator<Item = (TokenKind, &str, Inn
30673068

30683069
/// Checks whether a given span has any comment token
30693070
/// This checks for all types of comment: line "//", block "/**", doc "///" "//!"
3070-
pub fn span_contains_comment(sm: &SourceMap, span: Span) -> bool {
3071-
let Ok(snippet) = sm.span_to_snippet(span) else {
3071+
pub fn span_contains_comment(sm: &impl HasSourceMap, span: Span) -> bool {
3072+
let Ok(snippet) = sm.source_map().span_to_snippet(span) else {
30723073
return false;
30733074
};
30743075
return tokenize(&snippet).any(|token| {

0 commit comments

Comments
 (0)