summaryrefslogtreecommitdiff
path: root/ecs/src/lib.rs
diff options
context:
space:
mode:
authorHampusM <hampus@hampusmat.com>2024-12-20 21:27:48 +0100
committerHampusM <hampus@hampusmat.com>2024-12-20 21:27:56 +0100
commitbe7d20f0c57cc834e943426090fe2debf76ca98d (patch)
tree8b81d1dd06bc7d486120f993e3e3e70e48cb34c6 /ecs/src/lib.rs
parentcd30a25d2a75cadfe990ae6c1ae2eca5d927a8a7 (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.rs3
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::{