1 // run-pass 2 3 4 trait Pushable<T> { push_val(&mut self, t: T)5 fn push_val(&mut self, t: T); 6 } 7 8 impl<T> Pushable<T> for Vec<T> { push_val(&mut self, t: T)9 fn push_val(&mut self, t: T) { 10 self.push(t); 11 } 12 } 13 main()14pub fn main() { 15 let mut v = vec![1]; 16 v.push_val(2); 17 v.push_val(3); 18 assert_eq!(v, [1, 2, 3]); 19 } 20