@@ -118,6 +118,7 @@ mod unnecessary_literal_unwrap;
118118mod unnecessary_result_map_or_else;
119119mod unnecessary_sort_by;
120120mod unnecessary_to_owned;
121+ mod unused_enumerate_index;
121122mod unwrap_expect_used;
122123mod useless_asref;
123124mod utils;
@@ -4403,6 +4404,7 @@ impl Methods {
44034404 zst_offset:: check ( cx, expr, recv) ;
44044405 } ,
44054406 ( "all" , [ arg] ) => {
4407+ unused_enumerate_index:: check ( cx, expr, recv, arg) ;
44064408 if let Some ( ( "cloned" , recv2, [ ] , _, _) ) = method_call ( recv) {
44074409 iter_overeager_cloned:: check (
44084410 cx,
@@ -4421,23 +4423,26 @@ impl Methods {
44214423 unnecessary_lazy_eval:: check ( cx, expr, recv, arg, "and" ) ;
44224424 }
44234425 } ,
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+ }
44414446 } ,
44424447 ( "arg" , [ arg] ) => {
44434448 suspicious_command_arg_space:: check ( cx, recv, arg, span) ;
@@ -4570,14 +4575,17 @@ impl Methods {
45704575 }
45714576 } ,
45724577 ( "filter_map" , [ arg] ) => {
4578+ unused_enumerate_index:: check ( cx, expr, recv, arg) ;
45734579 unnecessary_filter_map:: check ( cx, expr, arg, name) ;
45744580 filter_map_bool_then:: check ( cx, expr, arg, call_span) ;
45754581 filter_map_identity:: check ( cx, expr, arg, span) ;
45764582 } ,
45774583 ( "find_map" , [ arg] ) => {
4584+ unused_enumerate_index:: check ( cx, expr, recv, arg) ;
45784585 unnecessary_filter_map:: check ( cx, expr, arg, name) ;
45794586 } ,
45804587 ( "flat_map" , [ arg] ) => {
4588+ unused_enumerate_index:: check ( cx, expr, recv, arg) ;
45814589 flat_map_identity:: check ( cx, expr, arg, span) ;
45824590 flat_map_option:: check ( cx, expr, arg, span) ;
45834591 } ,
@@ -4599,17 +4607,20 @@ impl Methods {
45994607 manual_try_fold:: check ( cx, expr, init, acc, call_span, & self . msrv ) ;
46004608 unnecessary_fold:: check ( cx, expr, init, acc, span) ;
46014609 } ,
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+ }
46134624 } ,
46144625 ( "get" , [ arg] ) => {
46154626 get_first:: check ( cx, expr, recv, arg) ;
@@ -4650,6 +4661,7 @@ impl Methods {
46504661 } ,
46514662 ( name @ ( "map" | "map_err" ) , [ m_arg] ) => {
46524663 if name == "map" {
4664+ unused_enumerate_index:: check ( cx, expr, recv, m_arg) ;
46534665 map_clone:: check ( cx, expr, recv, m_arg, & self . msrv ) ;
46544666 match method_call ( recv) {
46554667 Some ( ( map_name @ ( "iter" | "into_iter" ) , recv2, _, _, _) ) => {
0 commit comments