@@ -118,6 +118,7 @@ mod unnecessary_literal_unwrap;
118
118
mod unnecessary_result_map_or_else;
119
119
mod unnecessary_sort_by;
120
120
mod unnecessary_to_owned;
121
+ mod unused_enumerate_index;
121
122
mod unwrap_expect_used;
122
123
mod useless_asref;
123
124
mod utils;
@@ -4403,6 +4404,7 @@ impl Methods {
4403
4404
zst_offset:: check ( cx, expr, recv) ;
4404
4405
} ,
4405
4406
( "all" , [ arg] ) => {
4407
+ unused_enumerate_index:: check ( cx, expr, recv, arg) ;
4406
4408
if let Some ( ( "cloned" , recv2, [ ] , _, _) ) = method_call ( recv) {
4407
4409
iter_overeager_cloned:: check (
4408
4410
cx,
@@ -4421,23 +4423,26 @@ impl Methods {
4421
4423
unnecessary_lazy_eval:: check ( cx, expr, recv, arg, "and" ) ;
4422
4424
}
4423
4425
} ,
4424
- ( "any" , [ arg] ) => match method_call ( recv) {
4425
- Some ( ( "cloned" , recv2, [ ] , _, _) ) => iter_overeager_cloned:: check (
4426
- cx,
4427
- expr,
4428
- recv,
4429
- recv2,
4430
- iter_overeager_cloned:: Op :: NeedlessMove ( arg) ,
4431
- false ,
4432
- ) ,
4433
- Some ( ( "chars" , recv, _, _, _) )
4434
- if let ExprKind :: Closure ( arg) = arg. kind
4435
- && let body = cx. tcx . hir ( ) . body ( arg. body )
4436
- && let [ param] = body. params =>
4437
- {
4438
- string_lit_chars_any:: check ( cx, expr, recv, param, peel_blocks ( body. value ) , & self . msrv ) ;
4439
- } ,
4440
- _ => { } ,
4426
+ ( "any" , [ arg] ) => {
4427
+ unused_enumerate_index:: check ( cx, expr, recv, arg) ;
4428
+ match method_call ( recv) {
4429
+ Some ( ( "cloned" , recv2, [ ] , _, _) ) => iter_overeager_cloned:: check (
4430
+ cx,
4431
+ expr,
4432
+ recv,
4433
+ recv2,
4434
+ iter_overeager_cloned:: Op :: NeedlessMove ( arg) ,
4435
+ false ,
4436
+ ) ,
4437
+ Some ( ( "chars" , recv, _, _, _) )
4438
+ if let ExprKind :: Closure ( arg) = arg. kind
4439
+ && let body = cx. tcx . hir ( ) . body ( arg. body )
4440
+ && let [ param] = body. params =>
4441
+ {
4442
+ string_lit_chars_any:: check ( cx, expr, recv, param, peel_blocks ( body. value ) , & self . msrv ) ;
4443
+ } ,
4444
+ _ => { } ,
4445
+ }
4441
4446
} ,
4442
4447
( "arg" , [ arg] ) => {
4443
4448
suspicious_command_arg_space:: check ( cx, recv, arg, span) ;
@@ -4570,14 +4575,17 @@ impl Methods {
4570
4575
}
4571
4576
} ,
4572
4577
( "filter_map" , [ arg] ) => {
4578
+ unused_enumerate_index:: check ( cx, expr, recv, arg) ;
4573
4579
unnecessary_filter_map:: check ( cx, expr, arg, name) ;
4574
4580
filter_map_bool_then:: check ( cx, expr, arg, call_span) ;
4575
4581
filter_map_identity:: check ( cx, expr, arg, span) ;
4576
4582
} ,
4577
4583
( "find_map" , [ arg] ) => {
4584
+ unused_enumerate_index:: check ( cx, expr, recv, arg) ;
4578
4585
unnecessary_filter_map:: check ( cx, expr, arg, name) ;
4579
4586
} ,
4580
4587
( "flat_map" , [ arg] ) => {
4588
+ unused_enumerate_index:: check ( cx, expr, recv, arg) ;
4581
4589
flat_map_identity:: check ( cx, expr, arg, span) ;
4582
4590
flat_map_option:: check ( cx, expr, arg, span) ;
4583
4591
} ,
@@ -4599,17 +4607,20 @@ impl Methods {
4599
4607
manual_try_fold:: check ( cx, expr, init, acc, call_span, & self . msrv ) ;
4600
4608
unnecessary_fold:: check ( cx, expr, init, acc, span) ;
4601
4609
} ,
4602
- ( "for_each" , [ arg] ) => match method_call ( recv) {
4603
- Some ( ( "inspect" , _, [ _] , span2, _) ) => inspect_for_each:: check ( cx, expr, span2) ,
4604
- Some ( ( "cloned" , recv2, [ ] , _, _) ) => iter_overeager_cloned:: check (
4605
- cx,
4606
- expr,
4607
- recv,
4608
- recv2,
4609
- iter_overeager_cloned:: Op :: NeedlessMove ( arg) ,
4610
- false ,
4611
- ) ,
4612
- _ => { } ,
4610
+ ( "for_each" , [ arg] ) => {
4611
+ unused_enumerate_index:: check ( cx, expr, recv, arg) ;
4612
+ match method_call ( recv) {
4613
+ Some ( ( "inspect" , _, [ _] , span2, _) ) => inspect_for_each:: check ( cx, expr, span2) ,
4614
+ Some ( ( "cloned" , recv2, [ ] , _, _) ) => iter_overeager_cloned:: check (
4615
+ cx,
4616
+ expr,
4617
+ recv,
4618
+ recv2,
4619
+ iter_overeager_cloned:: Op :: NeedlessMove ( arg) ,
4620
+ false ,
4621
+ ) ,
4622
+ _ => { } ,
4623
+ }
4613
4624
} ,
4614
4625
( "get" , [ arg] ) => {
4615
4626
get_first:: check ( cx, expr, recv, arg) ;
@@ -4650,6 +4661,7 @@ impl Methods {
4650
4661
} ,
4651
4662
( name @ ( "map" | "map_err" ) , [ m_arg] ) => {
4652
4663
if name == "map" {
4664
+ unused_enumerate_index:: check ( cx, expr, recv, m_arg) ;
4653
4665
map_clone:: check ( cx, expr, recv, m_arg, & self . msrv ) ;
4654
4666
match method_call ( recv) {
4655
4667
Some ( ( map_name @ ( "iter" | "into_iter" ) , recv2, _, _, _) ) => {
0 commit comments