Joseph
Joseph
Seems like there's already bunch of feedback from contributors to the bevy project. As a *user* of bevy, this proposal sounds amazing ,and I hope I'll eventually be able to...
My bikeshed opinion: how about "fixed" and "relaxed"? If someone explicitly declares an ordering between two systems, I think that by default we should adhere to that, so we shouldn't...
Seems reasonable, "strict/relaxed" works. Definitely prefer it over "strong/weak".
> Could you rebase the changes so we do not need to review back-and-forth changes? Done, I think.
My trait query benchmarks look promising when I update to this branch. | All - 1 match | 66.371 µs | +5.2565% | |---------------------|-----------|----------| | All - 2 matches |...
I threw together a quick and dirty prototype, which uses a different approach than the previous attempts. I'm using it in my game, and it works quite well. Here's a...
I figured out how to do it [entirely with pointer arithmetic](https://github.com/JoJoJet/bevy-trait-query/commit/407b8c051b78a09d6ed115c2a77e0d5d5ed4ed34), which should make it comparable in performance to queries of concrete types. Although this requires [ptr_byte_offsets](https://github.com/rust-lang/rust/issues/96283) in order to...
Figured out universal queries. Here's [some benchmarks](https://github.com/JoJoJet/bevy-trait-query/tree/64a731c099dde18ba28d5f6f1cc91357d1d660ea/benches): | | Concrete types | Trait-existential | Trait-universal | |-------------------|----------------|-------------------|-----------------| | 1 match | 16.100 µs | 29.405 µs | 58.224 µs |...
I've polished up my implementation, and it's now ready for wider testing. I would highly appreciate feedback from anyone who tries using this in their game. Feel free to reach...
[It seems to](https://github.com/JoJoJet/bevy/commits/ub-find). Hopefully miri isn't just spuriously passing again.