diff options
author | HampusM <hampus@hampusmat.com> | 2024-12-20 21:27:48 +0100 |
---|---|---|
committer | HampusM <hampus@hampusmat.com> | 2024-12-20 21:27:56 +0100 |
commit | be7d20f0c57cc834e943426090fe2debf76ca98d (patch) | |
tree | 8b81d1dd06bc7d486120f993e3e3e70e48cb34c6 /ecs/src/lib.rs | |
parent | cd30a25d2a75cadfe990ae6c1ae2eca5d927a8a7 (diff) |
perf(ecs): use hashbrown's HashMap & HashSet
Hashbrown's HashMap & HashSet is faster than std's. I
guess this is because std (which uses hashbrown) does
not enable hashbrown's default-hasher flag and instead
uses a slower hasher.
Diffstat (limited to 'ecs/src/lib.rs')
-rw-r--r-- | ecs/src/lib.rs | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/ecs/src/lib.rs b/ecs/src/lib.rs index 3926344..43a00f1 100644 --- a/ecs/src/lib.rs +++ b/ecs/src/lib.rs @@ -2,12 +2,13 @@ use std::any::{type_name, TypeId}; use std::cell::RefCell; -use std::collections::HashMap; use std::fmt::Debug; use std::mem::ManuallyDrop; use std::sync::atomic::{AtomicBool, Ordering}; use std::sync::Arc; +use hashbrown::HashMap; + use crate::actions::Action; use crate::component::storage::Storage as ComponentStorage; use crate::component::{ |