use crate::state::memory::STATE;
use crate::state::types::runtime_state::State;
pub fn read_state<R>(f: impl FnOnce(&State) -> R) -> R {
STATE.with(|cell| f(&cell.borrow()))
}
pub fn mutate_state<R>(f: impl FnOnce(&mut State) -> R) -> R {
STATE.with(|cell| f(&mut cell.borrow_mut()))
}