//@ run-pass | |
fn main() { | |
let mut x: &[_] = &[1, 2, 3, 4]; | |
let mut result = vec![]; | |
loop { | |
x = match *x { | |
[1, n, 3, ref rest @ ..] => { | |
result.push(n); | |
rest | |
} | |
[n, ref rest @ ..] => { | |
result.push(n); | |
rest | |
} | |
[] => | |
break | |
} | |
} | |
assert_eq!(result, [2, 4]); | |
} |