blob: 14ac4a9ff5d0aaea0c86c3b94040385cea0d74c6 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
//@ run-rustfix
#![allow(unused_mut)]
#![allow(dead_code)]
pub trait Layer {
fn process(&mut self) -> u32;
}
pub struct State {
layers: Vec<Box<dyn Layer>>,
}
impl State {
pub fn process(&mut self) -> u32 {
self.layers.iter_mut().fold(0, |result, mut layer| result + layer.process())
//~^ ERROR cannot borrow `**layer` as mutable, as it is behind a `&` reference
}
}
fn main() {}
|