すべての州のハッシュマップがあります。これは でありHashMap<String, Rc<State>>
、現在の州のメンバーを呼び出したいと考えていますfn init(&mut self)
。しかし、次のコードでエラーが発生します。
...
if let Some(state) = self.states.get_mut(state_id) {
(*state).init();
}
...
エラーは次のとおりです。
src/main.rs:70:25: 70:33 error: cannot borrow immutable borrowed content as mutable
src/main.rs:70 (*state).shutdown();`
ドキュメントからわかるように、問題はget_mut
、可変状態への参照ではなく、状態への可変参照を返すことです。では、可変状態への参照を取得するにはどうすればよいでしょうか。