1 #[warn(clippy::iterator_step_by_zero)] main()2fn main() { 3 let _ = vec!["A", "B", "B"].iter().step_by(0); 4 let _ = "XXX".chars().step_by(0); 5 let _ = (0..1).step_by(0); 6 7 // No error, not an iterator. 8 let y = NotIterator; 9 y.step_by(0); 10 11 // No warning for non-zero step 12 let _ = (0..1).step_by(1); 13 14 let _ = (1..).step_by(0); 15 let _ = (1..=2).step_by(0); 16 17 let x = 0..1; 18 let _ = x.step_by(0); 19 20 // check const eval 21 let v1 = vec![1, 2, 3]; 22 let _ = v1.iter().step_by(2 / 3); 23 } 24 25 struct NotIterator; 26 impl NotIterator { step_by(&self, _: u32)27 fn step_by(&self, _: u32) {} 28 } 29