Use let-chaining in WhileTrue::check_expr
.
This has been bugging me for a while.
This commit is contained in:
parent
307dd938d7
commit
269ff92975
1 changed files with 22 additions and 24 deletions
|
@ -97,10 +97,11 @@ fn pierce_parens(mut expr: &ast::Expr) -> &ast::Expr {
|
||||||
|
|
||||||
impl EarlyLintPass for WhileTrue {
|
impl EarlyLintPass for WhileTrue {
|
||||||
fn check_expr(&mut self, cx: &EarlyContext<'_>, e: &ast::Expr) {
|
fn check_expr(&mut self, cx: &EarlyContext<'_>, e: &ast::Expr) {
|
||||||
if let ast::ExprKind::While(cond, _, label) = &e.kind {
|
if let ast::ExprKind::While(cond, _, label) = &e.kind
|
||||||
if let ast::ExprKind::Lit(ref lit) = pierce_parens(cond).kind {
|
&& let ast::ExprKind::Lit(ref lit) = pierce_parens(cond).kind
|
||||||
if let ast::LitKind::Bool(true) = lit.kind {
|
&& let ast::LitKind::Bool(true) = lit.kind
|
||||||
if !lit.span.from_expansion() {
|
&& !lit.span.from_expansion()
|
||||||
|
{
|
||||||
let condition_span = e.span.with_hi(cond.span.hi());
|
let condition_span = e.span.with_hi(cond.span.hi());
|
||||||
cx.struct_span_lint(WHILE_TRUE, condition_span, |lint| {
|
cx.struct_span_lint(WHILE_TRUE, condition_span, |lint| {
|
||||||
lint.build(fluent::lint::builtin_while_true)
|
lint.build(fluent::lint::builtin_while_true)
|
||||||
|
@ -121,9 +122,6 @@ impl EarlyLintPass for WhileTrue {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
declare_lint! {
|
declare_lint! {
|
||||||
/// The `box_pointers` lints use of the Box type.
|
/// The `box_pointers` lints use of the Box type.
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue