2021-01-03 13:01:01 -06:00
|
|
|
// Issue #5746
|
|
|
|
#![warn(clippy::redundant_pattern_matching)]
|
2023-06-10 06:43:30 -05:00
|
|
|
#![allow(
|
|
|
|
clippy::if_same_then_else,
|
|
|
|
clippy::equatable_if_let,
|
|
|
|
clippy::needless_if,
|
|
|
|
clippy::needless_else
|
|
|
|
)]
|
2021-01-03 13:01:01 -06:00
|
|
|
use std::task::Poll::{Pending, Ready};
|
|
|
|
|
|
|
|
fn main() {
|
|
|
|
let m = std::sync::Mutex::new((0, 0));
|
|
|
|
|
|
|
|
// Result
|
|
|
|
if m.lock().is_ok() {}
|
|
|
|
if Err::<(), _>(m.lock().unwrap().0).is_err() {}
|
|
|
|
|
|
|
|
{
|
|
|
|
if Ok::<_, std::sync::MutexGuard<()>>(()).is_ok() {}
|
|
|
|
}
|
|
|
|
if Ok::<_, std::sync::MutexGuard<()>>(()).is_ok() {
|
|
|
|
} else {
|
|
|
|
}
|
|
|
|
if Ok::<_, std::sync::MutexGuard<()>>(()).is_ok() {}
|
|
|
|
if Err::<std::sync::MutexGuard<()>, _>(()).is_err() {}
|
|
|
|
|
|
|
|
if Ok::<_, ()>(String::new()).is_ok() {}
|
|
|
|
if Err::<(), _>((String::new(), ())).is_err() {}
|
|
|
|
|
|
|
|
// Option
|
|
|
|
if Some(m.lock()).is_some() {}
|
|
|
|
if Some(m.lock().unwrap().0).is_some() {}
|
|
|
|
|
|
|
|
{
|
|
|
|
if None::<std::sync::MutexGuard<()>>.is_none() {}
|
|
|
|
}
|
|
|
|
if None::<std::sync::MutexGuard<()>>.is_none() {
|
|
|
|
} else {
|
|
|
|
}
|
|
|
|
|
|
|
|
if None::<std::sync::MutexGuard<()>>.is_none() {}
|
|
|
|
|
|
|
|
if Some(String::new()).is_some() {}
|
|
|
|
if Some((String::new(), ())).is_some() {}
|
|
|
|
|
|
|
|
// Poll
|
|
|
|
if Ready(m.lock()).is_ready() {}
|
|
|
|
if Ready(m.lock().unwrap().0).is_ready() {}
|
|
|
|
|
|
|
|
{
|
|
|
|
if Pending::<std::sync::MutexGuard<()>>.is_pending() {}
|
|
|
|
}
|
|
|
|
if Pending::<std::sync::MutexGuard<()>>.is_pending() {
|
|
|
|
} else {
|
|
|
|
}
|
|
|
|
|
|
|
|
if Pending::<std::sync::MutexGuard<()>>.is_pending() {}
|
|
|
|
|
|
|
|
if Ready(String::new()).is_ready() {}
|
|
|
|
if Ready((String::new(), ())).is_ready() {}
|
|
|
|
}
|