rust/src/test/run-pass/coerce-reborrow-mut-vec-rcvr.rs

22 lines
328 B
Rust
Raw Normal View History

trait Reverser {
fn reverse(&self);
}
impl &mut [uint] : Reverser {
fn reverse(&self) {
vec::reverse(*self);
}
}
fn bar(v: &mut [uint]) {
v.reverse();
v.reverse();
v.reverse();
}
pub fn main() {
let mut the_vec = ~[1, 2, 3, 100];
bar(the_vec);
assert the_vec == ~[100, 3, 2, 1];
}