30 lines
720 B
Rust
30 lines
720 B
Rust
//@aux-build:option_helpers.rs
|
|
|
|
#![warn(clippy::skip_while_next)]
|
|
#![allow(clippy::disallowed_names, clippy::useless_vec)]
|
|
|
|
extern crate option_helpers;
|
|
use option_helpers::IteratorFalsePositives;
|
|
|
|
#[rustfmt::skip]
|
|
fn skip_while_next() {
|
|
let v = vec![3, 2, 1, 0, -1, -2, -3];
|
|
|
|
// Single-line case.
|
|
let _ = v.iter().skip_while(|&x| *x < 0).next();
|
|
|
|
// Multi-line case.
|
|
let _ = v.iter().skip_while(|&x| {
|
|
*x < 0
|
|
}
|
|
).next();
|
|
|
|
// Check that hat we don't lint if the caller is not an `Iterator`.
|
|
let foo = IteratorFalsePositives { foo: 0 };
|
|
let _ = foo.skip_while().next();
|
|
}
|
|
|
|
fn main() {
|
|
skip_while_next();
|
|
}
|