diff options
| author | Raiki Tamura <tamaron1203@gmail.com> | 2023-01-07 20:44:02 +0900 |
|---|---|---|
| committer | Raiki Tamura <tamaron1203@gmail.com> | 2023-01-07 20:44:02 +0900 |
| commit | ce56cf71d956ea78c319ff510651473ca8dce47c (patch) | |
| tree | d67abc52e8a86e8a8d17241cc4de24b1e5cf345d | |
| parent | 79ed23ff815bc39d0062ade40b2c38dd37e77373 (diff) | |
| download | rust-ce56cf71d956ea78c319ff510651473ca8dce47c.tar.gz rust-ce56cf71d956ea78c319ff510651473ca8dce47c.zip | |
chore
| -rw-r--r-- | clippy_lints/src/loops/single_element_loop.rs | 14 | ||||
| -rw-r--r-- | clippy_utils/src/visitors.rs | 11 |
2 files changed, 12 insertions, 13 deletions
diff --git a/clippy_lints/src/loops/single_element_loop.rs b/clippy_lints/src/loops/single_element_loop.rs index 7cbc456244e..744fd61bd13 100644 --- a/clippy_lints/src/loops/single_element_loop.rs +++ b/clippy_lints/src/loops/single_element_loop.rs @@ -1,7 +1,7 @@ use super::SINGLE_ELEMENT_LOOP; use clippy_utils::diagnostics::span_lint_and_sugg; use clippy_utils::source::{indent_of, snippet_with_applicability}; -use clippy_utils::visitors::for_each_expr; +use clippy_utils::visitors::contains_break_or_continue; use if_chain::if_chain; use rustc_ast::util::parser::PREC_PREFIX; use rustc_ast::Mutability; @@ -9,18 +9,6 @@ use rustc_errors::Applicability; use rustc_hir::{is_range_literal, BorrowKind, Expr, ExprKind, Pat}; use rustc_lint::LateContext; use rustc_span::edition::Edition; -use std::ops::ControlFlow; - -fn contains_break_or_continue(expr: &Expr<'_>) -> bool { - for_each_expr(expr, |e| { - if matches!(e.kind, ExprKind::Break(..) | ExprKind::Continue(..)) { - ControlFlow::Break(()) - } else { - ControlFlow::Continue(()) - } - }) - .is_some() -} pub(super) fn check<'tcx>( cx: &LateContext<'tcx>, diff --git a/clippy_utils/src/visitors.rs b/clippy_utils/src/visitors.rs index 863fb60fcfc..14c01a60b4c 100644 --- a/clippy_utils/src/visitors.rs +++ b/clippy_utils/src/visitors.rs @@ -724,3 +724,14 @@ pub fn for_each_local_assignment<'tcx, B>( ControlFlow::Continue(()) } } + +pub fn contains_break_or_continue(expr: &Expr<'_>) -> bool { + for_each_expr(expr, |e| { + if matches!(e.kind, ExprKind::Break(..) | ExprKind::Continue(..)) { + ControlFlow::Break(()) + } else { + ControlFlow::Continue(()) + } + }) + .is_some() +} |
