rust/src/test/run-pass/vec-matching-autoslice.rs

23 lines
601 B
Rust
Raw Normal View History

pub fn main() {
2012-12-15 17:13:55 -06:00
let x = @[1, 2, 3];
match x {
[2, .._] => ::core::util::unreachable(),
2012-12-15 17:13:55 -06:00
[1, ..tail] => {
2013-03-28 20:39:09 -05:00
assert!(tail == [2, 3]);
2012-12-15 17:13:55 -06:00
}
[_] => ::core::util::unreachable(),
[] => ::core::util::unreachable()
2012-12-15 17:13:55 -06:00
}
let y = (~[(1, true), (2, false)], 0.5);
match y {
([_, _, _], 0.5) => ::core::util::unreachable(),
2012-12-15 17:13:55 -06:00
([(1, a), (b, false), ..tail], _) => {
2013-03-28 20:39:09 -05:00
assert!(a == true);
assert!(b == 2);
assert!(tail.is_empty());
2012-12-15 17:13:55 -06:00
}
([..tail], _) => ::core::util::unreachable()
2012-12-15 17:13:55 -06:00
}
}