Interior mutability complicates code and is less efficient, especially in multi-threaded environments where it requires synchronization using RwLock<>. The thing is that the code (as it is currently) can be rewritten not to require interior mutability, with minor changes and no performance loss. The same can be done for the code in the PSGS branch. So unless there are expectable future changes that require this interior mutability, I would strongly favor to remove it for now, maybe after PSGS is merged.
Interior mutability complicates code and is less efficient, especially in multi-threaded environments where it requires synchronization using
RwLock<>. The thing is that the code (as it is currently) can be rewritten not to require interior mutability, with minor changes and no performance loss. The same can be done for the code in the PSGS branch. So unless there are expectable future changes that require this interior mutability, I would strongly favor to remove it for now, maybe after PSGS is merged.