bevy/examples/ecs
CatThingy 89cbc78d3d
Require #[derive(Event)] on all Events (#7086)
# Objective

Be consistent with `Resource`s and `Components` and have `Event` types
be more self-documenting.
Although not susceptible to accidentally using a function instead of a
value due to `Event`s only being initialized by their type, much of the
same reasoning for removing the blanket impl on `Resource` also applies
here.

* Not immediately obvious if a type is intended to be an event
* Prevent invisible conflicts if the same third-party or primitive types
are used as events
* Allows for further extensions (e.g. opt-in warning for missed events)

## Solution

Remove the blanket impl for the `Event` trait. Add a derive macro for
it.

---

## Changelog

- `Event` is no longer implemented for all applicable types. Add the
`#[derive(Event)]` macro for events.

## Migration Guide

* Add the `#[derive(Event)]` macro for events. Third-party types used as
events should be wrapped in a newtype.
2023-06-06 14:44:32 +00:00
..
apply_deferred.rs Rename apply_system_buffers to apply_deferred (#8726) 2023-06-02 14:04:13 +00:00
component_change_detection.rs Schedule-First: the new and improved add_systems (#8079) 2023-03-18 01:45:34 +00:00
custom_query_param.rs Fixed several missing links in docs. (#8117) 2023-04-23 17:28:36 +00:00
ecs_guide.rs Merge ScheduleRunnerSettings into ScheduleRunnerPlugin (#8585) 2023-05-10 16:46:21 +00:00
event.rs Require #[derive(Event)] on all Events (#7086) 2023-06-06 14:44:32 +00:00
fixed_timestep.rs Schedule-First: the new and improved add_systems (#8079) 2023-03-18 01:45:34 +00:00
generic_system.rs Remove OnUpdate system set (#8260) 2023-04-04 00:49:41 +00:00
hierarchy.rs Schedule-First: the new and improved add_systems (#8079) 2023-03-18 01:45:34 +00:00
iter_combinations.rs Schedule-First: the new and improved add_systems (#8079) 2023-03-18 01:45:34 +00:00
nondeterministic_system_order.rs Schedule-First: the new and improved add_systems (#8079) 2023-03-18 01:45:34 +00:00
parallel_query.rs Schedule-First: the new and improved add_systems (#8079) 2023-03-18 01:45:34 +00:00
removal_detection.rs Rename apply_system_buffers to apply_deferred (#8726) 2023-06-02 14:04:13 +00:00
run_conditions.rs Add or_else combinator to run_conditions.rs (#8714) 2023-05-31 16:52:36 +00:00
startup_system.rs Schedule-First: the new and improved add_systems (#8079) 2023-03-18 01:45:34 +00:00
state.rs Flatten UI Style properties that use Size + remove Size (#8548) 2023-05-16 01:36:32 +00:00
system_closure.rs Schedule-First: the new and improved add_systems (#8079) 2023-03-18 01:45:34 +00:00
system_param.rs Schedule-First: the new and improved add_systems (#8079) 2023-03-18 01:45:34 +00:00
system_piping.rs Schedule-First: the new and improved add_systems (#8079) 2023-03-18 01:45:34 +00:00
timers.rs Schedule-First: the new and improved add_systems (#8079) 2023-03-18 01:45:34 +00:00