Add a WorldQuery adapter to make accessing single() more ergonomic.
- Dominant language
- Rust
- Stars
- 48.2k
- Forks
- 4.8k
- Avg merge
- 3d 22h
- Merged PRs (30d)
- 161
Description
## What problem does this solve or what need does it fill?
It isn't unusual to assert that a query will only ever result in a single entity:
```rust
fn example(
camera: Query<(Entity, &Camera, &Transform, &GlobalTransform)>,
) {
let (camera_entity, camera, camera_transform, camera_global_transform) = camera.single();
// ...
}
```
We could simplify this pattern with a WorldQuery adapter similar to bevy_trait_query's One<>:
```rust
fn example(
camera: Single>,
) {
// camera is a tuple of the things
}
```
## What solution would you like?
A WorldQuery adapter generic seems like it is easy to use and expressive.
## What alternative(s) have you considered?
Not much else?
Contributor guide
Assessment
This issue has not been assessed yet.