diff options
| author | Jason Newcomb <jsnewcomb@pm.me> | 2024-06-12 12:59:55 -0400 |
|---|---|---|
| committer | Jason Newcomb <jsnewcomb@pm.me> | 2024-07-07 16:27:27 -0400 |
| commit | f493d71a38f9737e512b133598bcb78981619f58 (patch) | |
| tree | 0e55cb37fb61c5054296bdfdf5948262257f9bdf | |
| parent | c73aceb0435ca35e47d0d8361ce49a74ff3ec70b (diff) | |
| download | rust-f493d71a38f9737e512b133598bcb78981619f58.tar.gz rust-f493d71a38f9737e512b133598bcb78981619f58.zip | |
`infinite_iter`: Only lock the symbol table once.
| -rw-r--r-- | clippy_lints/src/infinite_iter.rs | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/clippy_lints/src/infinite_iter.rs b/clippy_lints/src/infinite_iter.rs index 9ad02735878..fa7e7f6b76d 100644 --- a/clippy_lints/src/infinite_iter.rs +++ b/clippy_lints/src/infinite_iter.rs @@ -226,13 +226,14 @@ const INFINITE_COLLECTORS: &[Symbol] = &[ fn complete_infinite_iter(cx: &LateContext<'_>, expr: &Expr<'_>) -> Finiteness { match expr.kind { ExprKind::MethodCall(method, receiver, args, _) => { + let method_str = method.ident.name.as_str(); for &(name, len) in &COMPLETING_METHODS { - if method.ident.name.as_str() == name && args.len() == len { + if method_str == name && args.len() == len { return is_infinite(cx, receiver); } } for &(name, len) in &POSSIBLY_COMPLETING_METHODS { - if method.ident.name.as_str() == name && args.len() == len { + if method_str == name && args.len() == len { return MaybeInfinite.and(is_infinite(cx, receiver)); } } |
