rust/tests/ui/redundant_pattern_matching.rs

64 lines
1.4 KiB
Rust
Raw Normal View History

2018-10-06 11:18:06 -05:00
// Copyright 2014-2018 The Rust Project Developers. See the COPYRIGHT
// file at the top-level directory of this distribution.
//
// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
// option. This file may not be copied, modified, or distributed
// except according to those terms.
2018-07-28 10:34:52 -05:00
#![warn(clippy::all)]
#![warn(clippy::redundant_pattern_matching)]
fn main() {
if let Ok(_) = Ok::<i32, i32>(42) {}
2017-02-08 07:58:07 -06:00
2018-12-09 16:26:16 -06:00
if let Err(_) = Err::<i32, i32>(42) {}
2018-12-09 16:26:16 -06:00
if let None = None::<()> {}
2018-12-09 16:26:16 -06:00
if let Some(_) = Some(42) {}
2018-12-09 16:26:16 -06:00
if Ok::<i32, i32>(42).is_ok() {}
2018-12-09 16:26:16 -06:00
if Err::<i32, i32>(42).is_err() {}
2018-12-09 16:26:16 -06:00
if None::<i32>.is_none() {}
2018-12-09 16:26:16 -06:00
if Some(42).is_some() {}
2018-12-09 16:26:16 -06:00
if let Ok(x) = Ok::<i32, i32>(42) {
println!("{}", x);
}
match Ok::<i32, i32>(42) {
Ok(_) => true,
Err(_) => false,
};
match Ok::<i32, i32>(42) {
Ok(_) => false,
Err(_) => true,
};
match Err::<i32, i32>(42) {
Ok(_) => false,
Err(_) => true,
};
match Err::<i32, i32>(42) {
Ok(_) => true,
Err(_) => false,
};
match Some(42) {
Some(_) => true,
None => false,
};
match None::<()> {
Some(_) => false,
None => true,
};
}