let mut vec = vec![1, 2, 3]; let iter = vec.iter(); loop { match iter.next() { Some(x) => vec.push(x), None => break, } }