1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
use std::borrow::Cow; struct Foo { pub data: Cow<Vec<i64>>, } fn get(foo: Foo) -> Foo { Foo{data: foo.data} } fn main() { let mut f = Foo{data: vec![1, 2, 3]}; { let mut g = get(f); } println!("f = {:?}", f.data); }