use quickcheck::{quickcheck, TestResult}; fn reverse(xs: &[T]) -> Vec { let mut rev = vec![]; for x in xs { rev.insert(0, x.clone()) } rev } fn main() { fn prop(xs: Vec) -> TestResult { if xs.len() != 1 { return TestResult::discard(); } TestResult::from_bool(xs == reverse(&*xs)) } quickcheck(prop as fn(Vec) -> TestResult); }