I have this working code:
let foo_ips = vec![Ipv4Addr::new(127,0,0,1),
Ipv4Addr::new(127,0,0,2),
Ipv4Addr::new(127,0,0,3)];
let foos: Vec<Foo> = foo_ips.iter().map(|x| {Foo::new(*x)}).collect();
I believe that this is using a copy constructor to create new Ipv4Addrs to pass to Foo::new().
Am I correct?
If so, how do I take the ips out of foo_ips to pass ownership of each to Foo::new()?