Skip to content

Commit ec1b9ce

Browse files
committed
Move some utils to ty_utils
1 parent 0e042d2 commit ec1b9ce

File tree

114 files changed

+575
-509
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

114 files changed

+575
-509
lines changed

clippy_lints/src/assign_ops.rs

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
use crate::utils::{
2-
eq_expr_value, get_trait_def_id, implements_trait, snippet_opt, span_lint_and_then, trait_ref_of_method,
3-
};
1+
use crate::utils::{eq_expr_value, get_trait_def_id, snippet_opt, span_lint_and_then, trait_ref_of_method};
42
use crate::utils::{higher, sugg};
3+
use clippy_utils::ty::implements_trait;
54
use if_chain::if_chain;
65
use rustc_errors::Applicability;
76
use rustc_hir as hir;

clippy_lints/src/async_yields_async.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
use crate::utils::{implements_trait, snippet, span_lint_and_then};
1+
use crate::utils::{snippet, span_lint_and_then};
2+
use clippy_utils::ty::implements_trait;
23
use rustc_errors::Applicability;
34
use rustc_hir::{AsyncGeneratorKind, Body, BodyId, ExprKind, GeneratorKind, QPath};
45
use rustc_lint::{LateContext, LateLintPass};

clippy_lints/src/blocks_in_if_conditions.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use crate::utils::{
2-
differing_macro_contexts, get_parent_expr, implements_trait, snippet_block_with_applicability, span_lint,
3-
span_lint_and_sugg,
2+
differing_macro_contexts, get_parent_expr, snippet_block_with_applicability, span_lint, span_lint_and_sugg,
43
};
4+
use clippy_utils::ty::implements_trait;
55
use if_chain::if_chain;
66
use rustc_errors::Applicability;
77
use rustc_hir::intravisit::{walk_expr, NestedVisitorMap, Visitor};

clippy_lints/src/booleans.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use crate::utils::{
2-
eq_expr_value, get_trait_def_id, implements_trait, in_macro, is_type_diagnostic_item, paths, snippet_opt,
3-
span_lint_and_sugg, span_lint_and_then,
2+
eq_expr_value, get_trait_def_id, in_macro, paths, snippet_opt, span_lint_and_sugg, span_lint_and_then,
43
};
4+
use clippy_utils::ty::{implements_trait, is_type_diagnostic_item};
55
use if_chain::if_chain;
66
use rustc_ast::ast::LitKind;
77
use rustc_errors::Applicability;

clippy_lints/src/bytecount.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
use crate::utils::{
2-
contains_name, get_pat_name, match_type, paths, single_segment_path, snippet_with_applicability, span_lint_and_sugg,
2+
contains_name, get_pat_name, paths, single_segment_path, snippet_with_applicability, span_lint_and_sugg,
33
};
4+
use clippy_utils::ty::match_type;
45
use if_chain::if_chain;
56
use rustc_errors::Applicability;
67
use rustc_hir::{BinOpKind, BorrowKind, Expr, ExprKind, UnOp};

clippy_lints/src/casts/cast_lossless.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
1+
use clippy_utils::ty::is_isize_or_usize;
12
use rustc_errors::Applicability;
23
use rustc_hir::{Expr, ExprKind};
34
use rustc_lint::LateContext;
45
use rustc_middle::ty::{self, FloatTy, Ty};
56

6-
use crate::utils::{in_constant, is_isize_or_usize, snippet_opt, span_lint_and_sugg};
7+
use crate::utils::{in_constant, snippet_opt, span_lint_and_sugg};
78

89
use super::{utils, CAST_LOSSLESS};
910

clippy_lints/src/casts/cast_possible_truncation.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1+
use clippy_utils::ty::is_isize_or_usize;
12
use rustc_hir::Expr;
23
use rustc_lint::LateContext;
34
use rustc_middle::ty::{self, FloatTy, Ty};
45

5-
use crate::utils::{is_isize_or_usize, span_lint};
6+
use crate::utils::span_lint;
67

78
use super::{utils, CAST_POSSIBLE_TRUNCATION};
89

clippy_lints/src/casts/cast_possible_wrap.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1+
use clippy_utils::ty::is_isize_or_usize;
12
use rustc_hir::Expr;
23
use rustc_lint::LateContext;
34
use rustc_middle::ty::Ty;
45

5-
use crate::utils::{is_isize_or_usize, span_lint};
6+
use crate::utils::span_lint;
67

78
use super::{utils, CAST_POSSIBLE_WRAP};
89

clippy_lints/src/casts/cast_precision_loss.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1+
use clippy_utils::ty::is_isize_or_usize;
12
use rustc_hir::Expr;
23
use rustc_lint::LateContext;
34
use rustc_middle::ty::{self, FloatTy, Ty};
45

5-
use crate::utils::{is_isize_or_usize, span_lint};
6+
use crate::utils::span_lint;
67

78
use super::{utils, CAST_PRECISION_LOSS};
89

clippy_lints/src/cognitive_complexity.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
//! calculate cognitive complexity and warn about overly complex functions
22
3+
use clippy_utils::ty::is_type_diagnostic_item;
34
use rustc_ast::ast::Attribute;
45
use rustc_hir::intravisit::{walk_expr, FnKind, NestedVisitorMap, Visitor};
56
use rustc_hir::{Body, Expr, ExprKind, FnDecl, HirId};
@@ -9,7 +10,7 @@ use rustc_session::{declare_tool_lint, impl_lint_pass};
910
use rustc_span::source_map::Span;
1011
use rustc_span::{sym, BytePos};
1112

12-
use crate::utils::{is_type_diagnostic_item, snippet_opt, span_lint_and_help, LimitStack};
13+
use crate::utils::{snippet_opt, span_lint_and_help, LimitStack};
1314

1415
declare_clippy_lint! {
1516
/// **What it does:** Checks for methods with high cognitive complexity.

clippy_lints/src/comparison_chain.rs

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
use crate::utils::{
2-
get_trait_def_id, if_sequence, implements_trait, parent_node_is_if_expr, paths, span_lint_and_help, SpanlessEq,
3-
};
1+
use crate::utils::{get_trait_def_id, if_sequence, parent_node_is_if_expr, paths, span_lint_and_help, SpanlessEq};
2+
use clippy_utils::ty::implements_trait;
43
use rustc_hir::{BinOpKind, Expr, ExprKind};
54
use rustc_lint::{LateContext, LateLintPass};
65
use rustc_session::{declare_lint_pass, declare_tool_lint};

clippy_lints/src/copy_iterator.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
use crate::utils::{is_copy, span_lint_and_note};
1+
use crate::utils::span_lint_and_note;
2+
use clippy_utils::ty::is_copy;
23
use rustc_hir::{Impl, Item, ItemKind};
34
use rustc_lint::{LateContext, LateLintPass};
45
use rustc_session::{declare_lint_pass, declare_tool_lint};

clippy_lints/src/dereference.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
use crate::utils::{get_parent_node, in_macro, is_allowed, peel_mid_ty_refs, snippet_with_context, span_lint_and_sugg};
1+
use crate::utils::{get_parent_node, in_macro, is_allowed, snippet_with_context, span_lint_and_sugg};
2+
use clippy_utils::ty::peel_mid_ty_refs;
23
use rustc_ast::util::parser::PREC_PREFIX;
34
use rustc_errors::Applicability;
45
use rustc_hir::{BorrowKind, Expr, ExprKind, HirId, MatchSource, Mutability, Node, UnOp};

clippy_lints/src/derive.rs

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
use crate::utils::paths;
22
use crate::utils::{
3-
get_trait_def_id, is_allowed, is_automatically_derived, is_copy, match_def_path, span_lint_and_help,
4-
span_lint_and_note, span_lint_and_then,
3+
get_trait_def_id, is_allowed, is_automatically_derived, match_def_path, span_lint_and_help, span_lint_and_note,
4+
span_lint_and_then,
55
};
6+
use clippy_utils::ty::is_copy;
67
use if_chain::if_chain;
78
use rustc_hir::def_id::DefId;
89
use rustc_hir::intravisit::{walk_expr, walk_fn, walk_item, FnKind, NestedVisitorMap, Visitor};

clippy_lints/src/doc.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
use crate::utils::{
2-
implements_trait, is_entrypoint_fn, is_expn_of, is_type_diagnostic_item, match_panic_def_id, method_chain_args,
3-
return_ty, span_lint, span_lint_and_note,
2+
is_entrypoint_fn, is_expn_of, match_panic_def_id, method_chain_args, return_ty, span_lint, span_lint_and_note,
43
};
4+
use clippy_utils::ty::{implements_trait, is_type_diagnostic_item};
55
use if_chain::if_chain;
66
use itertools::Itertools;
77
use rustc_ast::ast::{Async, AttrKind, Attribute, FnKind, FnRetTy, ItemKind};

clippy_lints/src/drop_forget_ref.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
use crate::utils::{is_copy, match_def_path, paths, span_lint_and_note};
1+
use crate::utils::{match_def_path, paths, span_lint_and_note};
2+
use clippy_utils::ty::is_copy;
23
use if_chain::if_chain;
34
use rustc_hir::{Expr, ExprKind};
45
use rustc_lint::{LateContext, LateLintPass};

clippy_lints/src/duration_subsec.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
use clippy_utils::ty::match_type;
12
use if_chain::if_chain;
23
use rustc_errors::Applicability;
34
use rustc_hir::{BinOpKind, Expr, ExprKind};
@@ -7,7 +8,7 @@ use rustc_span::source_map::Spanned;
78

89
use crate::consts::{constant, Constant};
910
use crate::utils::paths;
10-
use crate::utils::{match_type, snippet_with_applicability, span_lint_and_sugg};
11+
use crate::utils::{snippet_with_applicability, span_lint_and_sugg};
1112

1213
declare_clippy_lint! {
1314
/// **What it does:** Checks for calculation of subsecond microseconds or milliseconds

clippy_lints/src/entry.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
use crate::utils::SpanlessEq;
2-
use crate::utils::{get_item_name, is_type_diagnostic_item, match_type, paths, snippet, snippet_opt};
2+
use crate::utils::{get_item_name, paths, snippet, snippet_opt};
33
use crate::utils::{snippet_with_applicability, span_lint_and_then};
4+
use clippy_utils::ty::{is_type_diagnostic_item, match_type};
45
use if_chain::if_chain;
56
use rustc_errors::Applicability;
67
use rustc_hir::intravisit::{walk_expr, NestedVisitorMap, Visitor};

clippy_lints/src/eq_op.rs

+3-2
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,8 @@
11
use crate::utils::{
2-
ast_utils::is_useless_with_eq_exprs, eq_expr_value, higher, implements_trait, in_macro, is_copy, is_expn_of,
3-
multispan_sugg, snippet, span_lint, span_lint_and_then,
2+
ast_utils::is_useless_with_eq_exprs, eq_expr_value, higher, in_macro, is_expn_of, multispan_sugg, snippet,
3+
span_lint, span_lint_and_then,
44
};
5+
use clippy_utils::ty::{implements_trait, is_copy};
56
use if_chain::if_chain;
67
use rustc_errors::Applicability;
78
use rustc_hir::{BinOpKind, BorrowKind, Expr, ExprKind, StmtKind};

clippy_lints/src/escape.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
use clippy_utils::ty::contains_ty;
12
use rustc_hir::intravisit;
23
use rustc_hir::{self, AssocItemKind, Body, FnDecl, HirId, HirIdSet, Impl, ItemKind, Node};
34
use rustc_infer::infer::TyCtxtInferExt;
@@ -10,7 +11,7 @@ use rustc_target::abi::LayoutOf;
1011
use rustc_target::spec::abi::Abi;
1112
use rustc_typeck::expr_use_visitor::{ConsumeMode, Delegate, ExprUseVisitor, PlaceBase, PlaceWithHirId};
1213

13-
use crate::utils::{contains_ty, span_lint};
14+
use crate::utils::span_lint;
1415

1516
#[derive(Copy, Clone)]
1617
pub struct BoxedLocal {

clippy_lints/src/eta_reduction.rs

+4-6
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
use clippy_utils::higher;
2+
use clippy_utils::higher::VecArgs;
3+
use clippy_utils::ty::{implements_trait, type_is_unsafe_function};
14
use if_chain::if_chain;
25
use rustc_errors::Applicability;
36
use rustc_hir::{def_id, Expr, ExprKind, Param, PatKind, QPath};
@@ -6,12 +9,7 @@ use rustc_middle::lint::in_external_macro;
69
use rustc_middle::ty::{self, Ty};
710
use rustc_session::{declare_lint_pass, declare_tool_lint};
811

9-
use crate::utils::{
10-
implements_trait, is_adjusted, iter_input_pats, snippet_opt, span_lint_and_sugg, span_lint_and_then,
11-
type_is_unsafe_function,
12-
};
13-
use clippy_utils::higher;
14-
use clippy_utils::higher::VecArgs;
12+
use crate::utils::{is_adjusted, iter_input_pats, snippet_opt, span_lint_and_sugg, span_lint_and_then};
1513

1614
declare_clippy_lint! {
1715
/// **What it does:** Checks for closures which just call another function where

clippy_lints/src/fallible_impl_from.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
use crate::utils::{is_expn_of, is_type_diagnostic_item, match_panic_def_id, method_chain_args, span_lint_and_then};
1+
use crate::utils::{is_expn_of, match_panic_def_id, method_chain_args, span_lint_and_then};
2+
use clippy_utils::ty::is_type_diagnostic_item;
23
use if_chain::if_chain;
34
use rustc_hir as hir;
45
use rustc_lint::{LateContext, LateLintPass};

clippy_lints/src/format.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
use crate::utils::paths;
22
use crate::utils::{
3-
is_expn_of, is_type_diagnostic_item, last_path_segment, match_def_path, match_function_call, snippet, snippet_opt,
4-
span_lint_and_then,
3+
is_expn_of, last_path_segment, match_def_path, match_function_call, snippet, snippet_opt, span_lint_and_then,
54
};
5+
use clippy_utils::ty::is_type_diagnostic_item;
66
use if_chain::if_chain;
77
use rustc_ast::ast::LitKind;
88
use rustc_errors::Applicability;

clippy_lints/src/from_str_radix_10.rs

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1+
use clippy_utils::ty::is_type_diagnostic_item;
12
use if_chain::if_chain;
23
use rustc_errors::Applicability;
34
use rustc_hir::{def, Expr, ExprKind, PrimTy, QPath, TyKind};
@@ -6,7 +7,6 @@ use rustc_middle::ty::Ty;
67
use rustc_session::{declare_lint_pass, declare_tool_lint};
78
use rustc_span::symbol::sym;
89

9-
use crate::utils::is_type_diagnostic_item;
1010
use crate::utils::span_lint_and_sugg;
1111
use crate::utils::sugg::Sugg;
1212

clippy_lints/src/functions.rs

+4-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
11
use crate::utils::{
2-
attr_by_name, attrs::is_proc_macro, is_must_use_ty, is_trait_impl_item, is_type_diagnostic_item, iter_input_pats,
3-
match_def_path, must_use_attr, path_to_local, return_ty, snippet, snippet_opt, span_lint, span_lint_and_help,
4-
span_lint_and_then, trait_ref_of_method, type_is_unsafe_function,
2+
attr_by_name, attrs::is_proc_macro, is_trait_impl_item, iter_input_pats, match_def_path, must_use_attr,
3+
path_to_local, return_ty, snippet, snippet_opt, span_lint, span_lint_and_help, span_lint_and_then,
4+
trait_ref_of_method,
55
};
6+
use clippy_utils::ty::{is_must_use_ty, is_type_diagnostic_item, type_is_unsafe_function};
67
use if_chain::if_chain;
78
use rustc_ast::ast::Attribute;
89
use rustc_data_structures::fx::FxHashSet;

clippy_lints/src/get_last_with_len.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
//! lint on using `x.get(x.len() - 1)` instead of `x.last()`
22
3-
use crate::utils::{is_type_diagnostic_item, snippet_with_applicability, span_lint_and_sugg, SpanlessEq};
3+
use crate::utils::{snippet_with_applicability, span_lint_and_sugg, SpanlessEq};
4+
use clippy_utils::ty::is_type_diagnostic_item;
45
use if_chain::if_chain;
56
use rustc_ast::ast::LitKind;
67
use rustc_errors::Applicability;

clippy_lints/src/if_let_mutex.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
use crate::utils::{is_type_diagnostic_item, span_lint_and_help, SpanlessEq};
1+
use crate::utils::{span_lint_and_help, SpanlessEq};
2+
use clippy_utils::ty::is_type_diagnostic_item;
23
use if_chain::if_chain;
34
use rustc_hir::intravisit::{self as visit, NestedVisitorMap, Visitor};
45
use rustc_hir::{Expr, ExprKind, MatchSource};

clippy_lints/src/if_let_some_result.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
1-
use crate::utils::{is_type_diagnostic_item, method_chain_args, snippet_with_applicability, span_lint_and_sugg};
1+
use crate::utils::{method_chain_args, snippet_with_applicability, span_lint_and_sugg};
2+
use clippy_utils::ty::is_type_diagnostic_item;
23
use if_chain::if_chain;
34
use rustc_errors::Applicability;
45
use rustc_hir::{Expr, ExprKind, MatchSource, PatKind, QPath};

clippy_lints/src/infinite_iter.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,9 @@
1+
use clippy_utils::ty::{implements_trait, match_type};
12
use rustc_hir::{BorrowKind, Expr, ExprKind};
23
use rustc_lint::{LateContext, LateLintPass};
34
use rustc_session::{declare_lint_pass, declare_tool_lint};
45

5-
use crate::utils::{get_trait_def_id, higher, implements_trait, match_qpath, match_type, paths, span_lint};
6+
use crate::utils::{get_trait_def_id, higher, match_qpath, paths, span_lint};
67

78
declare_clippy_lint! {
89
/// **What it does:** Checks for iteration that is guaranteed to be infinite.

clippy_lints/src/inherent_to_string.rs

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,11 @@
1+
use clippy_utils::ty::{implements_trait, is_type_diagnostic_item};
12
use if_chain::if_chain;
23
use rustc_hir::{ImplItem, ImplItemKind};
34
use rustc_lint::{LateContext, LateLintPass};
45
use rustc_session::{declare_lint_pass, declare_tool_lint};
56
use rustc_span::sym;
67

7-
use crate::utils::{
8-
get_trait_def_id, implements_trait, is_type_diagnostic_item, paths, return_ty, span_lint_and_help,
9-
trait_ref_of_method,
10-
};
8+
use crate::utils::{get_trait_def_id, paths, return_ty, span_lint_and_help, trait_ref_of_method};
119

1210
declare_clippy_lint! {
1311
/// **What it does:** Checks for the definition of inherent methods with a signature of `to_string(&self) -> String`.

clippy_lints/src/let_underscore.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
1+
use clippy_utils::ty::{is_must_use_ty, match_type};
12
use if_chain::if_chain;
23
use rustc_hir::{Local, PatKind};
34
use rustc_lint::{LateContext, LateLintPass};
45
use rustc_middle::lint::in_external_macro;
56
use rustc_middle::ty::subst::GenericArgKind;
67
use rustc_session::{declare_lint_pass, declare_tool_lint};
78

8-
use crate::utils::{is_must_use_func_call, is_must_use_ty, match_type, paths, span_lint_and_help};
9+
use crate::utils::{is_must_use_func_call, paths, span_lint_and_help};
910

1011
declare_clippy_lint! {
1112
/// **What it does:** Checks for `let _ = <expr>`

clippy_lints/src/loops/explicit_iter_loop.rs

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,12 @@
11
use super::EXPLICIT_ITER_LOOP;
2-
use crate::utils::{match_trait_method, snippet_with_applicability, span_lint_and_sugg};
2+
use clippy_utils::ty::{is_type_diagnostic_item, match_type};
33
use rustc_errors::Applicability;
44
use rustc_hir::{Expr, Mutability};
55
use rustc_lint::LateContext;
66
use rustc_middle::ty::{self, Ty, TyS};
77
use rustc_span::sym;
88

9-
use crate::utils::{is_type_diagnostic_item, match_type, paths};
9+
use crate::utils::{match_trait_method, paths, snippet_with_applicability, span_lint_and_sugg};
1010

1111
pub(super) fn check(cx: &LateContext<'_>, args: &[Expr<'_>], arg: &Expr<'_>, method_name: &str) {
1212
let should_lint = match method_name {

clippy_lints/src/loops/for_kv_map.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
use super::FOR_KV_MAP;
22
use crate::utils::visitors::LocalUsedVisitor;
3-
use crate::utils::{is_type_diagnostic_item, match_type, multispan_sugg, paths, snippet, span_lint_and_then, sugg};
3+
use crate::utils::{multispan_sugg, paths, snippet, span_lint_and_then, sugg};
4+
use clippy_utils::ty::{is_type_diagnostic_item, match_type};
45
use rustc_hir::{BorrowKind, Expr, ExprKind, Mutability, Pat, PatKind};
56
use rustc_lint::LateContext;
67
use rustc_middle::ty;

clippy_lints/src/loops/for_loops_over_fallibles.rs

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
use super::FOR_LOOPS_OVER_FALLIBLES;
2-
use crate::utils::{is_type_diagnostic_item, snippet, span_lint_and_help};
2+
use crate::utils::{snippet, span_lint_and_help};
3+
use clippy_utils::ty::is_type_diagnostic_item;
34
use rustc_hir::{Expr, Pat};
45
use rustc_lint::LateContext;
56
use rustc_span::symbol::sym;

clippy_lints/src/loops/manual_memcpy.rs

+2-3
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
use super::{get_span_of_entire_for_loop, IncrementVisitor, InitializeVisitor, MANUAL_MEMCPY};
22
use crate::utils::sugg::Sugg;
3-
use crate::utils::{
4-
get_enclosing_block, higher, is_type_diagnostic_item, path_to_local, snippet, span_lint_and_sugg, sugg,
5-
};
3+
use crate::utils::{get_enclosing_block, higher, path_to_local, snippet, span_lint_and_sugg, sugg};
4+
use clippy_utils::ty::is_type_diagnostic_item;
65
use if_chain::if_chain;
76
use rustc_ast::ast;
87
use rustc_errors::Applicability;

clippy_lints/src/loops/needless_collect.rs

+2-4
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
use super::NEEDLESS_COLLECT;
22
use crate::utils::sugg::Sugg;
3-
use crate::utils::{
4-
is_trait_method, is_type_diagnostic_item, match_type, path_to_local_id, paths, snippet, span_lint_and_sugg,
5-
span_lint_and_then,
6-
};
3+
use crate::utils::{is_trait_method, path_to_local_id, paths, snippet, span_lint_and_sugg, span_lint_and_then};
4+
use clippy_utils::ty::{is_type_diagnostic_item, match_type};
75
use if_chain::if_chain;
86
use rustc_errors::Applicability;
97
use rustc_hir::intravisit::{walk_block, walk_expr, NestedVisitorMap, Visitor};

0 commit comments

Comments
 (0)