Example 1 ``` struct Foo; impl Foo { fn foo(&self, v: &mut Vec<&u32>, x: &u32) { v.push(x); } } ``` Example 2 ``` fn foo(v: &mut Vec<&u32>, x: &u32) { v.push(x); } ``` Example 3 ``` struct Foo; impl Foo { fn foo(&self, x: &u32) -> &u32 { x } } ``` cc @nikomatsakis