bevy/crates/bevy_asset/src
Alice Cecile 557ab9897a Make get_resource (and friends) infallible (#4047)
# Objective

- In the large majority of cases, users were calling `.unwrap()` immediately after `.get_resource`.
- Attempting to add more helpful error messages here resulted in endless manual boilerplate (see #3899 and the linked PRs).

## Solution

- Add an infallible variant named `.resource` and so on.
- Use these infallible variants over `.get_resource().unwrap()` across the code base.

## Notes

I did not provide equivalent methods on `WorldCell`, in favor of removing it entirely in #3939.

## Migration Guide

Infallible variants of `.get_resource` have been added that implicitly panic, rather than needing to be unwrapped.

Replace `world.get_resource::<Foo>().unwrap()` with `world.resource::<Foo>()`.

## Impact

- `.unwrap` search results before: 1084
- `.unwrap` search results after: 942
- internal `unwrap_or_else` calls added: 4
- trivial unwrap calls removed from tests and code: 146
- uses of the new `try_get_resource` API: 11
- percentage of the time the unwrapping API was used internally: 93%
2022-02-27 22:37:18 +00:00
..
diagnostic Down with the system! (#2496) 2021-07-27 23:42:36 +00:00
io Internal Asset Hot Reloading (#3966) 2022-02-18 22:56:57 +00:00
asset_server.rs Make get_resource (and friends) infallible (#4047) 2022-02-27 22:37:18 +00:00
assets.rs Make get_resource (and friends) infallible (#4047) 2022-02-27 22:37:18 +00:00
debug_asset_server.rs Internal Asset Hot Reloading (#3966) 2022-02-18 22:56:57 +00:00
filesystem_watcher.rs Bump notify to 5.0.0-pre.11 (#2564) 2021-07-29 23:56:16 +00:00
handle.rs small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
info.rs [assets] set LoadState properly and more testing! (#2226) 2021-06-08 02:46:44 +00:00
lib.rs Make get_resource (and friends) infallible (#4047) 2022-02-27 22:37:18 +00:00
loader.rs small and mostly pointless refactoring (#2934) 2022-02-13 22:33:55 +00:00
path.rs Allow String and &String as Id for AssetServer.get_handle(id) (#3280) 2021-12-09 22:40:15 +00:00