bevy/crates/bevy_render
Tristan Guichaoua 1cded6ac60
Use immutable key for HashMap and HashSet (#12086)
# Objective

Memory usage optimisation

## Solution

`HashMap` and `HashSet`'s keys are immutable. So using mutable types
like `String`, `Vec<T>`, or `PathBuf` as a key is a waste of memory:
they have an extra `usize` for their capacity and may have spare
capacity.
This PR replaces these types by their immutable equivalents `Box<str>`,
`Box<[T]>`, and `Box<Path>`.

For more context, I recommend watching the [Use Arc Instead of
Vec](https://www.youtube.com/watch?v=A4cKi7PTJSs) video.

---------

Co-authored-by: James Liu <contact@jamessliu.com>
2024-02-26 16:27:40 +00:00
..
macros Bump Version after Release (#12020) 2024-02-21 20:58:59 +00:00
src Use immutable key for HashMap and HashSet (#12086) 2024-02-26 16:27:40 +00:00
Cargo.toml Made bevy_color a dependency of bevy_render (#12105) 2024-02-25 22:35:00 +00:00