#![allow(dead_code, deprecated, unused_variables, unused_mut)] fn main() { let a = [1, 2, 3, 4]; let mut iter = a.into_iter(); let result: Vec = iter.by_ref().take_while(|&n| n != 3).collect(); assert_eq!(result, [1, 2]); let result: Vec = iter.collect(); assert_eq!(result, [4]); }