pub trait CellularAutomatonRenderer<T, U>: Send + Sync {
// Required methods
fn need_run_on_main(&self) -> bool;
fn run(&mut self, visual_mapping: Box<dyn StateVisualMapping<T, U>>);
}
pub trait CellularAutomatonRenderer<T, U>: Send + Sync {
// Required methods
fn need_run_on_main(&self) -> bool;
fn run(&mut self, visual_mapping: Box<dyn StateVisualMapping<T, U>>);
}