// Issue #5746 #![warn(clippy::redundant_pattern_matching)] #![allow( clippy::if_same_then_else, clippy::equatable_if_let, clippy::needless_if, clippy::needless_else )] 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::, _>(()).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::>.is_none() {} } if None::>.is_none() { } else { } if None::>.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::>.is_pending() {} } if Pending::>.is_pending() { } else { } if Pending::>.is_pending() {} if Ready(String::new()).is_ready() {} if Ready((String::new(), ())).is_ready() {} }