Add dedup check for events

This commit is contained in:
hodasemi 2025-04-15 09:54:38 +02:00
parent 50735ddb31
commit 7def5ee520

View file

@ -181,6 +181,8 @@ fn events_and_systems(update: &Update) -> TokenStream2 {
P: std::any::Any + Send + Sync,
{
fn add_reader(&mut self, func: Func) {
#( #verify_dedup )*
match self.events.get_mut(&TypeId::of::<P>()) {
Some((_, listener)) => listener.push(std::sync::Arc::new(move |world, payload| {
let typed_payload: &P = payload.downcast_ref().unwrap();