pub trait Plugin: Send + Sync {
// Required methods
fn on_register(
&mut self,
simulation: &mut World,
systems: &mut Systems,
resources: &mut Resources,
);
fn on_unregister(
&mut self,
simulation: &mut World,
systems: &mut Systems,
resources: &mut Resources,
);
// Provided method
fn dependencies(&self) -> Vec<TypeHash> { ... }
}