use crate::{traits::Storage, types::State};
use inkpad_std::Rc;
use core::cell::RefCell;
pub trait Cache<Memory: 'static + Clone>: Storage {
fn frame(&self) -> &Vec<Rc<RefCell<State<Memory>>>>;
fn frame_mut(&mut self) -> &mut Vec<Rc<RefCell<State<Memory>>>>;
fn memory(&self) -> Option<Memory>;
fn flush(&mut self) -> Option<()> {
Some(())
}
}