diff --git a/agb/Cargo.toml b/agb/Cargo.toml index ddbb7945..ad0ece1a 100644 --- a/agb/Cargo.toml +++ b/agb/Cargo.toml @@ -28,6 +28,7 @@ agb_fixnum = { version = "0.1.0", path = "../agb-fixnum" } bare-metal = "1.0" hashbrown = "0.12.0" modular-bitfield = "0.11.2" +rustc-hash = { version = "1.0", default-features = false } [package.metadata.docs.rs] default-target = "thumbv6m-none-eabi" diff --git a/agb/src/display/object.rs b/agb/src/display/object.rs index b8770b52..5b66ec2f 100644 --- a/agb/src/display/object.rs +++ b/agb/src/display/object.rs @@ -1,9 +1,11 @@ use alloc::vec::Vec; use core::alloc::Layout; use core::cell::RefCell; +use core::hash::BuildHasherDefault; use core::ptr::NonNull; use modular_bitfield::prelude::{B10, B2, B3, B4, B5, B8, B9}; use modular_bitfield::{bitfield, BitfieldSpecifier}; +use rustc_hash::FxHasher; use hashbrown::{hash_map::Entry, HashMap}; @@ -141,8 +143,8 @@ pub struct Object<'a, 'b> { } struct SpriteControllerInner { - palette: HashMap, - sprite: HashMap, + palette: HashMap>, + sprite: HashMap>, } pub struct SpriteController { @@ -378,8 +380,8 @@ impl SpriteController { impl SpriteControllerInner { fn new() -> Self { Self { - palette: HashMap::new(), - sprite: HashMap::new(), + palette: HashMap::default(), + sprite: HashMap::default(), } } fn get_palette(&mut self, palette: &'static Palette16) -> Option {