]> git.lizzy.rs Git - rust.git/blobdiff - clippy_lints/src/else_if_without_else.rs
Auto merge of #4551 - mikerite:fix-ice-reporting, r=llogiq
[rust.git] / clippy_lints / src / else_if_without_else.rs
index 01380fd968078dca4fee0e237adbca2990dc1366..6daf204a5f187587644bab1c255baba8de62b262 100644 (file)
@@ -1,7 +1,7 @@
 //! Lint on if expressions with an else if, but without a final else branch.
 
 use rustc::lint::{in_external_macro, EarlyContext, EarlyLintPass, LintArray, LintContext, LintPass};
-use rustc::{declare_tool_lint, lint_array};
+use rustc::{declare_lint_pass, declare_tool_lint};
 use syntax::ast::*;
 
 use crate::utils::span_help_and_lint;
@@ -16,6 +16,9 @@
     ///
     /// **Example:**
     /// ```rust
+    /// # fn a() {}
+    /// # fn b() {}
+    /// # let x: i32 = 1;
     /// if x.is_positive() {
     ///     a();
     /// } else if x.is_negative() {
@@ -26,6 +29,9 @@
     /// Could be written:
     ///
     /// ```rust
+    /// # fn a() {}
+    /// # fn b() {}
+    /// # let x: i32 = 1;
     /// if x.is_positive() {
     ///     a();
     /// } else if x.is_negative() {
     "if expression with an `else if`, but without a final `else` branch"
 }
 
-#[derive(Copy, Clone)]
-pub struct ElseIfWithoutElse;
-
-impl LintPass for ElseIfWithoutElse {
-    fn get_lints(&self) -> LintArray {
-        lint_array!(ELSE_IF_WITHOUT_ELSE)
-    }
-
-    fn name(&self) -> &'static str {
-        "ElseIfWithoutElse"
-    }
-}
+declare_lint_pass!(ElseIfWithoutElse => [ELSE_IF_WITHOUT_ELSE]);
 
 impl EarlyLintPass for ElseIfWithoutElse {
     fn check_expr(&mut self, cx: &EarlyContext<'_>, mut item: &Expr) {