From 2721e7f1de8488f7a5cd93c7d95c765f9d36ed9f Mon Sep 17 00:00:00 2001 From: Tim Blackbird Date: Sat, 12 Jul 2025 15:28:18 +0200 Subject: [PATCH] Split `BufferedEvent` from `Event` --- crates/bevy_ecs/src/event/base.rs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/crates/bevy_ecs/src/event/base.rs b/crates/bevy_ecs/src/event/base.rs index 89a3e10acd..60a214c0f0 100644 --- a/crates/bevy_ecs/src/event/base.rs +++ b/crates/bevy_ecs/src/event/base.rs @@ -259,7 +259,7 @@ pub trait EntityEvent: Event { const AUTO_PROPAGATE: bool = false; } -/// A buffered [`Event`] for pull-based event handling. +/// A buffered event for pull-based event handling. /// /// Buffered events can be written with [`EventWriter`] and read using the [`EventReader`] system parameter. /// These events are stored in the [`Events`] resource, and require periodically polling the world for new events, @@ -286,7 +286,7 @@ pub trait EntityEvent: Event { /// ``` /// # use bevy_ecs::prelude::*; /// # -/// #[derive(Event, BufferedEvent)] +/// #[derive(BufferedEvent)] /// struct Message(String); /// ``` /// @@ -295,7 +295,7 @@ pub trait EntityEvent: Event { /// ``` /// # use bevy_ecs::prelude::*; /// # -/// # #[derive(Event, BufferedEvent)] +/// # #[derive(BufferedEvent)] /// # struct Message(String); /// # /// fn write_hello(mut writer: EventWriter) { @@ -308,7 +308,7 @@ pub trait EntityEvent: Event { /// ``` /// # use bevy_ecs::prelude::*; /// # -/// # #[derive(Event, BufferedEvent)] +/// # #[derive(BufferedEvent)] /// # struct Message(String); /// # /// fn read_messages(mut reader: EventReader) { @@ -327,9 +327,9 @@ pub trait EntityEvent: Event { #[diagnostic::on_unimplemented( message = "`{Self}` is not an `BufferedEvent`", label = "invalid `BufferedEvent`", - note = "consider annotating `{Self}` with `#[derive(Event, BufferedEvent)]`" + note = "consider annotating `{Self}` with `#[derive(BufferedEvent)]`" )] -pub trait BufferedEvent: Event {} +pub trait BufferedEvent: Send + Sync + 'static {} /// An internal type that implements [`Component`] for a given [`Event`] type. ///