bevy/crates/bevy_ecs/src
Carter Anderson b1c3e9862d Auto-label function systems with SystemTypeIdLabel (#4224)
This adds the concept of "default labels" for systems (currently scoped to "parallel systems", but this could just as easily be implemented for "exclusive systems"). Function systems now include their function's `SystemTypeIdLabel` by default.

This enables the following patterns:

```rust
// ordering two systems without manually defining labels
app
  .add_system(update_velocity)
  .add_system(movement.after(update_velocity))

// ordering sets of systems without manually defining labels
app
  .add_system(foo)
  .add_system_set(
    SystemSet::new()
      .after(foo)
      .with_system(bar)
      .with_system(baz)
  )
```

Fixes: #4219
Related to: #4220 

Credit to @aevyrie @alice-i-cecile @DJMcNab (and probably others) for proposing (and supporting) this idea about a year ago. I was a big dummy that both shut down this (very good) idea and then forgot I did that. Sorry. You all were right!
2022-03-23 22:53:56 +00:00
..
entity Proper prehashing (#3963) 2022-02-18 03:26:01 +00:00
query Hide docs for concrete impls of Fetch, FetchState, and SystemParamState (#4250) 2022-03-21 05:23:36 +00:00
schedule Auto-label function systems with SystemTypeIdLabel (#4224) 2022-03-23 22:53:56 +00:00
storage Proper prehashing (#3963) 2022-02-18 03:26:01 +00:00
system Auto-label function systems with SystemTypeIdLabel (#4224) 2022-03-23 22:53:56 +00:00
world yeet World::components_mut >:( (#4092) 2022-03-21 23:43:08 +00:00
archetype.rs Change Cow<[ComponentId]> to Box<[ComponentId]> (#4185) 2022-03-19 04:14:27 +00:00
bundle.rs small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
change_detection.rs add missing into_inner to ReflectMut (#3841) 2022-02-04 03:37:45 +00:00
component.rs small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
event.rs small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
lib.rs Auto-label function systems with SystemTypeIdLabel (#4224) 2022-03-23 22:53:56 +00:00
reflect.rs Add FromReflect trait to convert dynamic types to concrete types (#1395) 2021-12-26 18:49:01 +00:00