| use quickcheck::quickcheck; | |
| fn reverse<T: Clone>(xs: &[T]) -> Vec<T> { | |
| let mut rev = vec![]; | |
| for x in xs { | |
| rev.insert(0, x.clone()) | |
| } | |
| rev | |
| } | |
| fn main() { | |
| fn equality_after_applying_twice(xs: Vec<isize>) -> bool { | |
| xs == reverse(&reverse(&xs)) | |
| } | |
| quickcheck(equality_after_applying_twice as fn(Vec<isize>) -> bool); | |
| } |