Привет! я новичок в раст. Не понимаю, чего от меня хочет компилятор
// HashMap<MlxEvent, Vec<Box<dyn Fn() -> i32>>> on_event_closure
pub fn on_event(&mut self, event: MlxEvent, f : Box<dyn Fn() -> i32>) {
match self.on_event_closure.get(&event) {
None => {
self.on_event_closure.insert(event, Vec::new());
self.on_event_closure.get(event.borrow()).expect("Fail insert func").push(f);
}
_Some => {
self.on_event_closure.get(event.borrow()).expect("Fail insert func").push(f);
}
}
}
error[E0596]: cannot borrow data in a `&` reference as mutable
--> src/mlx/mod.rs:166:17
|
166 | self.on_event_closure.get(event.borrow()).expect("Fail insert func").push(f);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ cannot borrow as mutable