mirror of
https://github.com/rust-lang/rust.git
synced 2024-12-13 00:56:14 +00:00
Change redundant_pattern_matching
to also lint std::task::Poll
Suggest using utility methods `is_pending` and `is_ready`.
This commit is contained in:
parent
44d944586c
commit
5a83968877
@ -411,8 +411,8 @@ declare_clippy_lint! {
|
||||
}
|
||||
|
||||
declare_clippy_lint! {
|
||||
/// **What it does:** Lint for redundant pattern matching over `Result` or
|
||||
/// `Option`
|
||||
/// **What it does:** Lint for redundant pattern matching over `Result`, `Option` or
|
||||
/// `std::task::Poll`
|
||||
///
|
||||
/// **Why is this bad?** It's more concise and clear to just use the proper
|
||||
/// utility function
|
||||
@ -422,10 +422,13 @@ declare_clippy_lint! {
|
||||
/// **Example:**
|
||||
///
|
||||
/// ```rust
|
||||
/// # use std::task::Poll;
|
||||
/// if let Ok(_) = Ok::<i32, i32>(42) {}
|
||||
/// if let Err(_) = Err::<i32, i32>(42) {}
|
||||
/// if let None = None::<()> {}
|
||||
/// if let Some(_) = Some(42) {}
|
||||
/// if let Poll::Pending = Poll::Pending::<()> {}
|
||||
/// if let Poll::Ready(_) = Poll::Ready(42) {}
|
||||
/// match Ok::<i32, i32>(42) {
|
||||
/// Ok(_) => true,
|
||||
/// Err(_) => false,
|
||||
@ -435,10 +438,13 @@ declare_clippy_lint! {
|
||||
/// The more idiomatic use would be:
|
||||
///
|
||||
/// ```rust
|
||||
/// # use std::task::Poll;
|
||||
/// if Ok::<i32, i32>(42).is_ok() {}
|
||||
/// if Err::<i32, i32>(42).is_err() {}
|
||||
/// if None::<()>.is_none() {}
|
||||
/// if Some(42).is_some() {}
|
||||
/// if Poll::Pending::<()>.is_pending() {}
|
||||
/// if Poll::Ready(42).is_ready() {}
|
||||
/// Ok::<i32, i32>(42).is_ok();
|
||||
/// ```
|
||||
pub REDUNDANT_PATTERN_MATCHING,
|
||||
@ -1538,6 +1544,8 @@ mod redundant_pattern_match {
|
||||
"is_err()"
|
||||
} else if match_qpath(path, &paths::OPTION_SOME) {
|
||||
"is_some()"
|
||||
} else if match_qpath(path, &paths::POLL_READY) {
|
||||
"is_ready()"
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
@ -1545,7 +1553,15 @@ mod redundant_pattern_match {
|
||||
return;
|
||||
}
|
||||
},
|
||||
PatKind::Path(ref path) if match_qpath(path, &paths::OPTION_NONE) => "is_none()",
|
||||
PatKind::Path(ref path) => {
|
||||
if match_qpath(path, &paths::OPTION_NONE) {
|
||||
"is_none()"
|
||||
} else if match_qpath(path, &paths::POLL_PENDING) {
|
||||
"is_pending()"
|
||||
} else {
|
||||
return;
|
||||
}
|
||||
},
|
||||
_ => return,
|
||||
};
|
||||
|
||||
@ -1628,6 +1644,17 @@ mod redundant_pattern_match {
|
||||
"is_some()",
|
||||
"is_none()",
|
||||
)
|
||||
.or_else(|| {
|
||||
find_good_method_for_match(
|
||||
arms,
|
||||
path_left,
|
||||
path_right,
|
||||
&paths::POLL_READY,
|
||||
&paths::POLL_PENDING,
|
||||
"is_ready()",
|
||||
"is_pending()",
|
||||
)
|
||||
})
|
||||
} else {
|
||||
None
|
||||
}
|
||||
|
@ -86,6 +86,8 @@ pub const PATH_BUF: [&str; 3] = ["std", "path", "PathBuf"];
|
||||
pub const PATH_BUF_AS_PATH: [&str; 4] = ["std", "path", "PathBuf", "as_path"];
|
||||
pub const PATH_TO_PATH_BUF: [&str; 4] = ["std", "path", "Path", "to_path_buf"];
|
||||
pub const POLL: [&str; 4] = ["core", "task", "poll", "Poll"];
|
||||
pub const POLL_PENDING: [&str; 5] = ["core", "task", "poll", "Poll", "Pending"];
|
||||
pub const POLL_READY: [&str; 5] = ["core", "task", "poll", "Poll", "Ready"];
|
||||
pub const PTR_EQ: [&str; 3] = ["core", "ptr", "eq"];
|
||||
pub const PTR_NULL: [&str; 3] = ["core", "ptr", "null"];
|
||||
pub const PTR_NULL_MUT: [&str; 3] = ["core", "ptr", "null_mut"];
|
||||
|
@ -2,13 +2,7 @@
|
||||
|
||||
#![warn(clippy::all)]
|
||||
#![warn(clippy::redundant_pattern_matching)]
|
||||
#![allow(
|
||||
clippy::unit_arg,
|
||||
unused_must_use,
|
||||
clippy::needless_bool,
|
||||
clippy::match_like_matches_macro,
|
||||
deprecated
|
||||
)]
|
||||
#![allow(unused_must_use, clippy::needless_bool, clippy::match_like_matches_macro)]
|
||||
|
||||
fn main() {
|
||||
if None::<()>.is_none() {}
|
||||
|
@ -2,13 +2,7 @@
|
||||
|
||||
#![warn(clippy::all)]
|
||||
#![warn(clippy::redundant_pattern_matching)]
|
||||
#![allow(
|
||||
clippy::unit_arg,
|
||||
unused_must_use,
|
||||
clippy::needless_bool,
|
||||
clippy::match_like_matches_macro,
|
||||
deprecated
|
||||
)]
|
||||
#![allow(unused_must_use, clippy::needless_bool, clippy::match_like_matches_macro)]
|
||||
|
||||
fn main() {
|
||||
if let None = None::<()> {}
|
||||
|
@ -1,5 +1,5 @@
|
||||
error: redundant pattern matching, consider using `is_none()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:14:12
|
||||
--> $DIR/redundant_pattern_matching_option.rs:8:12
|
||||
|
|
||||
LL | if let None = None::<()> {}
|
||||
| -------^^^^------------- help: try this: `if None::<()>.is_none()`
|
||||
@ -7,43 +7,43 @@ LL | if let None = None::<()> {}
|
||||
= note: `-D clippy::redundant-pattern-matching` implied by `-D warnings`
|
||||
|
||||
error: redundant pattern matching, consider using `is_some()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:16:12
|
||||
--> $DIR/redundant_pattern_matching_option.rs:10:12
|
||||
|
|
||||
LL | if let Some(_) = Some(42) {}
|
||||
| -------^^^^^^^----------- help: try this: `if Some(42).is_some()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_some()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:18:12
|
||||
--> $DIR/redundant_pattern_matching_option.rs:12:12
|
||||
|
|
||||
LL | if let Some(_) = Some(42) {
|
||||
| -------^^^^^^^----------- help: try this: `if Some(42).is_some()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_some()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:24:15
|
||||
--> $DIR/redundant_pattern_matching_option.rs:18:15
|
||||
|
|
||||
LL | while let Some(_) = Some(42) {}
|
||||
| ----------^^^^^^^----------- help: try this: `while Some(42).is_some()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_none()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:26:15
|
||||
--> $DIR/redundant_pattern_matching_option.rs:20:15
|
||||
|
|
||||
LL | while let None = Some(42) {}
|
||||
| ----------^^^^----------- help: try this: `while Some(42).is_none()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_none()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:28:15
|
||||
--> $DIR/redundant_pattern_matching_option.rs:22:15
|
||||
|
|
||||
LL | while let None = None::<()> {}
|
||||
| ----------^^^^------------- help: try this: `while None::<()>.is_none()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_some()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:31:15
|
||||
--> $DIR/redundant_pattern_matching_option.rs:25:15
|
||||
|
|
||||
LL | while let Some(_) = v.pop() {
|
||||
| ----------^^^^^^^---------- help: try this: `while v.pop().is_some()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_some()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:39:5
|
||||
--> $DIR/redundant_pattern_matching_option.rs:33:5
|
||||
|
|
||||
LL | / match Some(42) {
|
||||
LL | | Some(_) => true,
|
||||
@ -52,7 +52,7 @@ LL | | };
|
||||
| |_____^ help: try this: `Some(42).is_some()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_none()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:44:5
|
||||
--> $DIR/redundant_pattern_matching_option.rs:38:5
|
||||
|
|
||||
LL | / match None::<()> {
|
||||
LL | | Some(_) => false,
|
||||
@ -61,7 +61,7 @@ LL | | };
|
||||
| |_____^ help: try this: `None::<()>.is_none()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_none()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:49:13
|
||||
--> $DIR/redundant_pattern_matching_option.rs:43:13
|
||||
|
|
||||
LL | let _ = match None::<()> {
|
||||
| _____________^
|
||||
@ -71,49 +71,49 @@ LL | | };
|
||||
| |_____^ help: try this: `None::<()>.is_none()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_some()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:55:20
|
||||
--> $DIR/redundant_pattern_matching_option.rs:49:20
|
||||
|
|
||||
LL | let x = if let Some(_) = opt { true } else { false };
|
||||
| -------^^^^^^^------ help: try this: `if opt.is_some()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_some()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:60:20
|
||||
--> $DIR/redundant_pattern_matching_option.rs:54:20
|
||||
|
|
||||
LL | let _ = if let Some(_) = gen_opt() {
|
||||
| -------^^^^^^^------------ help: try this: `if gen_opt().is_some()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_none()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:62:19
|
||||
--> $DIR/redundant_pattern_matching_option.rs:56:19
|
||||
|
|
||||
LL | } else if let None = gen_opt() {
|
||||
| -------^^^^------------ help: try this: `if gen_opt().is_none()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_some()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:83:12
|
||||
--> $DIR/redundant_pattern_matching_option.rs:77:12
|
||||
|
|
||||
LL | if let Some(_) = Some(42) {}
|
||||
| -------^^^^^^^----------- help: try this: `if Some(42).is_some()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_none()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:85:12
|
||||
--> $DIR/redundant_pattern_matching_option.rs:79:12
|
||||
|
|
||||
LL | if let None = None::<()> {}
|
||||
| -------^^^^------------- help: try this: `if None::<()>.is_none()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_some()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:87:15
|
||||
--> $DIR/redundant_pattern_matching_option.rs:81:15
|
||||
|
|
||||
LL | while let Some(_) = Some(42) {}
|
||||
| ----------^^^^^^^----------- help: try this: `while Some(42).is_some()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_none()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:89:15
|
||||
--> $DIR/redundant_pattern_matching_option.rs:83:15
|
||||
|
|
||||
LL | while let None = None::<()> {}
|
||||
| ----------^^^^------------- help: try this: `while None::<()>.is_none()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_some()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:91:5
|
||||
--> $DIR/redundant_pattern_matching_option.rs:85:5
|
||||
|
|
||||
LL | / match Some(42) {
|
||||
LL | | Some(_) => true,
|
||||
@ -122,7 +122,7 @@ LL | | };
|
||||
| |_____^ help: try this: `Some(42).is_some()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_none()`
|
||||
--> $DIR/redundant_pattern_matching_option.rs:96:5
|
||||
--> $DIR/redundant_pattern_matching_option.rs:90:5
|
||||
|
|
||||
LL | / match None::<()> {
|
||||
LL | | Some(_) => false,
|
||||
|
73
tests/ui/redundant_pattern_matching_poll.fixed
Normal file
73
tests/ui/redundant_pattern_matching_poll.fixed
Normal file
@ -0,0 +1,73 @@
|
||||
// run-rustfix
|
||||
|
||||
#![warn(clippy::all)]
|
||||
#![warn(clippy::redundant_pattern_matching)]
|
||||
#![allow(unused_must_use, clippy::needless_bool, clippy::match_like_matches_macro)]
|
||||
|
||||
use std::task::Poll::{self, Pending, Ready};
|
||||
|
||||
fn main() {
|
||||
if Pending::<()>.is_pending() {}
|
||||
|
||||
if Ready(42).is_ready() {}
|
||||
|
||||
if Ready(42).is_ready() {
|
||||
foo();
|
||||
} else {
|
||||
bar();
|
||||
}
|
||||
|
||||
while Ready(42).is_ready() {}
|
||||
|
||||
while Ready(42).is_pending() {}
|
||||
|
||||
while Pending::<()>.is_pending() {}
|
||||
|
||||
if Pending::<i32>.is_pending() {}
|
||||
|
||||
if Ready(42).is_ready() {}
|
||||
|
||||
Ready(42).is_ready();
|
||||
|
||||
Pending::<()>.is_pending();
|
||||
|
||||
let _ = Pending::<()>.is_pending();
|
||||
|
||||
let poll = Ready(false);
|
||||
let x = if poll.is_ready() { true } else { false };
|
||||
takes_poll(x);
|
||||
|
||||
poll_const();
|
||||
|
||||
let _ = if gen_poll().is_ready() {
|
||||
1
|
||||
} else if gen_poll().is_pending() {
|
||||
2
|
||||
} else {
|
||||
3
|
||||
};
|
||||
}
|
||||
|
||||
fn gen_poll() -> Poll<()> {
|
||||
Pending
|
||||
}
|
||||
|
||||
fn takes_poll(_: bool) {}
|
||||
|
||||
fn foo() {}
|
||||
|
||||
fn bar() {}
|
||||
|
||||
const fn poll_const() {
|
||||
if Ready(42).is_ready() {}
|
||||
|
||||
if Pending::<()>.is_pending() {}
|
||||
|
||||
while Ready(42).is_ready() {}
|
||||
|
||||
while Pending::<()>.is_pending() {}
|
||||
|
||||
Ready(42).is_ready();
|
||||
|
||||
Pending::<()>.is_pending();
|
||||
}
|
88
tests/ui/redundant_pattern_matching_poll.rs
Normal file
88
tests/ui/redundant_pattern_matching_poll.rs
Normal file
@ -0,0 +1,88 @@
|
||||
// run-rustfix
|
||||
|
||||
#![warn(clippy::all)]
|
||||
#![warn(clippy::redundant_pattern_matching)]
|
||||
#![allow(unused_must_use, clippy::needless_bool, clippy::match_like_matches_macro)]
|
||||
|
||||
use std::task::Poll::{self, Pending, Ready};
|
||||
|
||||
fn main() {
|
||||
if let Pending = Pending::<()> {}
|
||||
|
||||
if let Ready(_) = Ready(42) {}
|
||||
|
||||
if let Ready(_) = Ready(42) {
|
||||
foo();
|
||||
} else {
|
||||
bar();
|
||||
}
|
||||
|
||||
while let Ready(_) = Ready(42) {}
|
||||
|
||||
while let Pending = Ready(42) {}
|
||||
|
||||
while let Pending = Pending::<()> {}
|
||||
|
||||
if Pending::<i32>.is_pending() {}
|
||||
|
||||
if Ready(42).is_ready() {}
|
||||
|
||||
match Ready(42) {
|
||||
Ready(_) => true,
|
||||
Pending => false,
|
||||
};
|
||||
|
||||
match Pending::<()> {
|
||||
Ready(_) => false,
|
||||
Pending => true,
|
||||
};
|
||||
|
||||
let _ = match Pending::<()> {
|
||||
Ready(_) => false,
|
||||
Pending => true,
|
||||
};
|
||||
|
||||
let poll = Ready(false);
|
||||
let x = if let Ready(_) = poll { true } else { false };
|
||||
takes_poll(x);
|
||||
|
||||
poll_const();
|
||||
|
||||
let _ = if let Ready(_) = gen_poll() {
|
||||
1
|
||||
} else if let Pending = gen_poll() {
|
||||
2
|
||||
} else {
|
||||
3
|
||||
};
|
||||
}
|
||||
|
||||
fn gen_poll() -> Poll<()> {
|
||||
Pending
|
||||
}
|
||||
|
||||
fn takes_poll(_: bool) {}
|
||||
|
||||
fn foo() {}
|
||||
|
||||
fn bar() {}
|
||||
|
||||
const fn poll_const() {
|
||||
if let Ready(_) = Ready(42) {}
|
||||
|
||||
if let Pending = Pending::<()> {}
|
||||
|
||||
while let Ready(_) = Ready(42) {}
|
||||
|
||||
while let Pending = Pending::<()> {}
|
||||
|
||||
match Ready(42) {
|
||||
Ready(_) => true,
|
||||
Pending => false,
|
||||
};
|
||||
|
||||
match Pending::<()> {
|
||||
Ready(_) => false,
|
||||
Pending => true,
|
||||
};
|
||||
}
|
128
tests/ui/redundant_pattern_matching_poll.stderr
Normal file
128
tests/ui/redundant_pattern_matching_poll.stderr
Normal file
@ -0,0 +1,128 @@
|
||||
error: redundant pattern matching, consider using `is_pending()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:10:12
|
||||
|
|
||||
LL | if let Pending = Pending::<()> {}
|
||||
| -------^^^^^^^---------------- help: try this: `if Pending::<()>.is_pending()`
|
||||
|
|
||||
= note: `-D clippy::redundant-pattern-matching` implied by `-D warnings`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ready()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:12:12
|
||||
|
|
||||
LL | if let Ready(_) = Ready(42) {}
|
||||
| -------^^^^^^^^------------ help: try this: `if Ready(42).is_ready()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ready()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:14:12
|
||||
|
|
||||
LL | if let Ready(_) = Ready(42) {
|
||||
| -------^^^^^^^^------------ help: try this: `if Ready(42).is_ready()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ready()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:20:15
|
||||
|
|
||||
LL | while let Ready(_) = Ready(42) {}
|
||||
| ----------^^^^^^^^------------ help: try this: `while Ready(42).is_ready()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_pending()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:22:15
|
||||
|
|
||||
LL | while let Pending = Ready(42) {}
|
||||
| ----------^^^^^^^------------ help: try this: `while Ready(42).is_pending()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_pending()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:24:15
|
||||
|
|
||||
LL | while let Pending = Pending::<()> {}
|
||||
| ----------^^^^^^^---------------- help: try this: `while Pending::<()>.is_pending()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ready()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:30:5
|
||||
|
|
||||
LL | / match Ready(42) {
|
||||
LL | | Ready(_) => true,
|
||||
LL | | Pending => false,
|
||||
LL | | };
|
||||
| |_____^ help: try this: `Ready(42).is_ready()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_pending()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:35:5
|
||||
|
|
||||
LL | / match Pending::<()> {
|
||||
LL | | Ready(_) => false,
|
||||
LL | | Pending => true,
|
||||
LL | | };
|
||||
| |_____^ help: try this: `Pending::<()>.is_pending()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_pending()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:40:13
|
||||
|
|
||||
LL | let _ = match Pending::<()> {
|
||||
| _____________^
|
||||
LL | | Ready(_) => false,
|
||||
LL | | Pending => true,
|
||||
LL | | };
|
||||
| |_____^ help: try this: `Pending::<()>.is_pending()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ready()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:46:20
|
||||
|
|
||||
LL | let x = if let Ready(_) = poll { true } else { false };
|
||||
| -------^^^^^^^^------- help: try this: `if poll.is_ready()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ready()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:51:20
|
||||
|
|
||||
LL | let _ = if let Ready(_) = gen_poll() {
|
||||
| -------^^^^^^^^------------- help: try this: `if gen_poll().is_ready()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_pending()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:53:19
|
||||
|
|
||||
LL | } else if let Pending = gen_poll() {
|
||||
| -------^^^^^^^------------- help: try this: `if gen_poll().is_pending()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ready()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:71:12
|
||||
|
|
||||
LL | if let Ready(_) = Ready(42) {}
|
||||
| -------^^^^^^^^------------ help: try this: `if Ready(42).is_ready()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_pending()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:73:12
|
||||
|
|
||||
LL | if let Pending = Pending::<()> {}
|
||||
| -------^^^^^^^---------------- help: try this: `if Pending::<()>.is_pending()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ready()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:75:15
|
||||
|
|
||||
LL | while let Ready(_) = Ready(42) {}
|
||||
| ----------^^^^^^^^------------ help: try this: `while Ready(42).is_ready()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_pending()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:77:15
|
||||
|
|
||||
LL | while let Pending = Pending::<()> {}
|
||||
| ----------^^^^^^^---------------- help: try this: `while Pending::<()>.is_pending()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ready()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:79:5
|
||||
|
|
||||
LL | / match Ready(42) {
|
||||
LL | | Ready(_) => true,
|
||||
LL | | Pending => false,
|
||||
LL | | };
|
||||
| |_____^ help: try this: `Ready(42).is_ready()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_pending()`
|
||||
--> $DIR/redundant_pattern_matching_poll.rs:84:5
|
||||
|
|
||||
LL | / match Pending::<()> {
|
||||
LL | | Ready(_) => false,
|
||||
LL | | Pending => true,
|
||||
LL | | };
|
||||
| |_____^ help: try this: `Pending::<()>.is_pending()`
|
||||
|
||||
error: aborting due to 18 previous errors
|
||||
|
@ -3,7 +3,6 @@
|
||||
#![warn(clippy::all)]
|
||||
#![warn(clippy::redundant_pattern_matching)]
|
||||
#![allow(
|
||||
clippy::unit_arg,
|
||||
unused_must_use,
|
||||
clippy::needless_bool,
|
||||
clippy::match_like_matches_macro,
|
@ -3,7 +3,6 @@
|
||||
#![warn(clippy::all)]
|
||||
#![warn(clippy::redundant_pattern_matching)]
|
||||
#![allow(
|
||||
clippy::unit_arg,
|
||||
unused_must_use,
|
||||
clippy::needless_bool,
|
||||
clippy::match_like_matches_macro,
|
@ -1,5 +1,5 @@
|
||||
error: redundant pattern matching, consider using `is_ok()`
|
||||
--> $DIR/redundant_pattern_matching.rs:16:12
|
||||
--> $DIR/redundant_pattern_matching_result.rs:15:12
|
||||
|
|
||||
LL | if let Ok(_) = &result {}
|
||||
| -------^^^^^---------- help: try this: `if result.is_ok()`
|
||||
@ -7,31 +7,31 @@ LL | if let Ok(_) = &result {}
|
||||
= note: `-D clippy::redundant-pattern-matching` implied by `-D warnings`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ok()`
|
||||
--> $DIR/redundant_pattern_matching.rs:18:12
|
||||
--> $DIR/redundant_pattern_matching_result.rs:17:12
|
||||
|
|
||||
LL | if let Ok(_) = Ok::<i32, i32>(42) {}
|
||||
| -------^^^^^--------------------- help: try this: `if Ok::<i32, i32>(42).is_ok()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_err()`
|
||||
--> $DIR/redundant_pattern_matching.rs:20:12
|
||||
--> $DIR/redundant_pattern_matching_result.rs:19:12
|
||||
|
|
||||
LL | if let Err(_) = Err::<i32, i32>(42) {}
|
||||
| -------^^^^^^---------------------- help: try this: `if Err::<i32, i32>(42).is_err()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ok()`
|
||||
--> $DIR/redundant_pattern_matching.rs:22:15
|
||||
--> $DIR/redundant_pattern_matching_result.rs:21:15
|
||||
|
|
||||
LL | while let Ok(_) = Ok::<i32, i32>(10) {}
|
||||
| ----------^^^^^--------------------- help: try this: `while Ok::<i32, i32>(10).is_ok()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_err()`
|
||||
--> $DIR/redundant_pattern_matching.rs:24:15
|
||||
--> $DIR/redundant_pattern_matching_result.rs:23:15
|
||||
|
|
||||
LL | while let Err(_) = Ok::<i32, i32>(10) {}
|
||||
| ----------^^^^^^--------------------- help: try this: `while Ok::<i32, i32>(10).is_err()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ok()`
|
||||
--> $DIR/redundant_pattern_matching.rs:34:5
|
||||
--> $DIR/redundant_pattern_matching_result.rs:33:5
|
||||
|
|
||||
LL | / match Ok::<i32, i32>(42) {
|
||||
LL | | Ok(_) => true,
|
||||
@ -40,7 +40,7 @@ LL | | };
|
||||
| |_____^ help: try this: `Ok::<i32, i32>(42).is_ok()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_err()`
|
||||
--> $DIR/redundant_pattern_matching.rs:39:5
|
||||
--> $DIR/redundant_pattern_matching_result.rs:38:5
|
||||
|
|
||||
LL | / match Ok::<i32, i32>(42) {
|
||||
LL | | Ok(_) => false,
|
||||
@ -49,7 +49,7 @@ LL | | };
|
||||
| |_____^ help: try this: `Ok::<i32, i32>(42).is_err()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_err()`
|
||||
--> $DIR/redundant_pattern_matching.rs:44:5
|
||||
--> $DIR/redundant_pattern_matching_result.rs:43:5
|
||||
|
|
||||
LL | / match Err::<i32, i32>(42) {
|
||||
LL | | Ok(_) => false,
|
||||
@ -58,7 +58,7 @@ LL | | };
|
||||
| |_____^ help: try this: `Err::<i32, i32>(42).is_err()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ok()`
|
||||
--> $DIR/redundant_pattern_matching.rs:49:5
|
||||
--> $DIR/redundant_pattern_matching_result.rs:48:5
|
||||
|
|
||||
LL | / match Err::<i32, i32>(42) {
|
||||
LL | | Ok(_) => true,
|
||||
@ -67,73 +67,73 @@ LL | | };
|
||||
| |_____^ help: try this: `Err::<i32, i32>(42).is_ok()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ok()`
|
||||
--> $DIR/redundant_pattern_matching.rs:54:20
|
||||
--> $DIR/redundant_pattern_matching_result.rs:53:20
|
||||
|
|
||||
LL | let _ = if let Ok(_) = Ok::<usize, ()>(4) { true } else { false };
|
||||
| -------^^^^^--------------------- help: try this: `if Ok::<usize, ()>(4).is_ok()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ok()`
|
||||
--> $DIR/redundant_pattern_matching.rs:60:20
|
||||
--> $DIR/redundant_pattern_matching_result.rs:59:20
|
||||
|
|
||||
LL | let _ = if let Ok(_) = gen_res() {
|
||||
| -------^^^^^------------ help: try this: `if gen_res().is_ok()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_err()`
|
||||
--> $DIR/redundant_pattern_matching.rs:62:19
|
||||
--> $DIR/redundant_pattern_matching_result.rs:61:19
|
||||
|
|
||||
LL | } else if let Err(_) = gen_res() {
|
||||
| -------^^^^^^------------ help: try this: `if gen_res().is_err()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_some()`
|
||||
--> $DIR/redundant_pattern_matching.rs:85:19
|
||||
--> $DIR/redundant_pattern_matching_result.rs:84:19
|
||||
|
|
||||
LL | while let Some(_) = r#try!(result_opt()) {}
|
||||
| ----------^^^^^^^----------------------- help: try this: `while r#try!(result_opt()).is_some()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_some()`
|
||||
--> $DIR/redundant_pattern_matching.rs:86:16
|
||||
--> $DIR/redundant_pattern_matching_result.rs:85:16
|
||||
|
|
||||
LL | if let Some(_) = r#try!(result_opt()) {}
|
||||
| -------^^^^^^^----------------------- help: try this: `if r#try!(result_opt()).is_some()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_some()`
|
||||
--> $DIR/redundant_pattern_matching.rs:92:12
|
||||
--> $DIR/redundant_pattern_matching_result.rs:91:12
|
||||
|
|
||||
LL | if let Some(_) = m!() {}
|
||||
| -------^^^^^^^------- help: try this: `if m!().is_some()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_some()`
|
||||
--> $DIR/redundant_pattern_matching.rs:93:15
|
||||
--> $DIR/redundant_pattern_matching_result.rs:92:15
|
||||
|
|
||||
LL | while let Some(_) = m!() {}
|
||||
| ----------^^^^^^^------- help: try this: `while m!().is_some()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ok()`
|
||||
--> $DIR/redundant_pattern_matching.rs:111:12
|
||||
--> $DIR/redundant_pattern_matching_result.rs:110:12
|
||||
|
|
||||
LL | if let Ok(_) = Ok::<i32, i32>(42) {}
|
||||
| -------^^^^^--------------------- help: try this: `if Ok::<i32, i32>(42).is_ok()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_err()`
|
||||
--> $DIR/redundant_pattern_matching.rs:113:12
|
||||
--> $DIR/redundant_pattern_matching_result.rs:112:12
|
||||
|
|
||||
LL | if let Err(_) = Err::<i32, i32>(42) {}
|
||||
| -------^^^^^^---------------------- help: try this: `if Err::<i32, i32>(42).is_err()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ok()`
|
||||
--> $DIR/redundant_pattern_matching.rs:115:15
|
||||
--> $DIR/redundant_pattern_matching_result.rs:114:15
|
||||
|
|
||||
LL | while let Ok(_) = Ok::<i32, i32>(10) {}
|
||||
| ----------^^^^^--------------------- help: try this: `while Ok::<i32, i32>(10).is_ok()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_err()`
|
||||
--> $DIR/redundant_pattern_matching.rs:117:15
|
||||
--> $DIR/redundant_pattern_matching_result.rs:116:15
|
||||
|
|
||||
LL | while let Err(_) = Ok::<i32, i32>(10) {}
|
||||
| ----------^^^^^^--------------------- help: try this: `while Ok::<i32, i32>(10).is_err()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_ok()`
|
||||
--> $DIR/redundant_pattern_matching.rs:119:5
|
||||
--> $DIR/redundant_pattern_matching_result.rs:118:5
|
||||
|
|
||||
LL | / match Ok::<i32, i32>(42) {
|
||||
LL | | Ok(_) => true,
|
||||
@ -142,7 +142,7 @@ LL | | };
|
||||
| |_____^ help: try this: `Ok::<i32, i32>(42).is_ok()`
|
||||
|
||||
error: redundant pattern matching, consider using `is_err()`
|
||||
--> $DIR/redundant_pattern_matching.rs:124:5
|
||||
--> $DIR/redundant_pattern_matching_result.rs:123:5
|
||||
|
|
||||
LL | / match Err::<i32, i32>(42) {
|
||||
LL | | Ok(_) => false,
|
Loading…
Reference in New Issue
Block a user