Э
Size: a a a
Э
AL
f
#[derive(Clone)]
struct Elem {}
struct Network {}
struct List { list: Vec<Elem>, network: Network }
impl List {
fn foo(&mut self) {
let elems
= self.list.iter().cloned();
for elem in elems {
self.send(elem)
}
}
fn send(&mut self, _e: Elem) { /* self.network.send(_e) */ }
}
f
&'static
можно только после материализацииЭ
foo(self) -> Self
? Тогда внутри разбирается на (Vec, Network)
, потом делаешь Self::bar(&mut network, elem.clone())
, а потом пересобираешь обратно в Self
.f
Э
f
f
f
Э
Э
АВ
АВ
BD
АВ
BD
АВ