Expand description
High-performance collections backed by explicit allocators.
Unlike std::collections, every type in this module:
- Never uses a global allocator. Each collection accepts an
Allocatorreference at construction time and routes all allocations through it. - Provides SIMD-accelerated operations (fill, search, copy) where
applicable via the internal
simdmodule. - Decouples data from logic via context traits: hashing and ordering
are provided through
HashContextandOrdContextrather than viaHash/Ordbounds. This allows domain-specific algorithms without wrapper types.
§Collection Overview
| Type | Description |
|---|---|
ExVec<T> | Growable contiguous array |
ExBox<T> | Single heap-allocated value |
ExString | Growable UTF-8 string |
ExHashMap<K, V, C> | Swiss-table open-addressing hash map |
ExPriorityQueue<T, C> | Binary-heap priority queue |
ExBoundedArray<T, N> | Fixed-capacity stack-allocated array |
Re-exports§
pub use vec::ExVec;pub use boxed::ExBox;pub use string::ExString;pub use hash_map::ExHashMap;pub use priority_queue::ExPriorityQueue;pub use bounded_array::ExBoundedArray;
Modules§
- bounded_
array - Fixed-capacity, stack-allocated array.
- boxed
- Heap-allocated single value with an explicit allocator.
- hash_
map - Swiss-table inspired open-addressing hash map.
- priority_
queue - Heap-based priority queue with an explicit allocator.
- string
- Growable UTF-8 string with an explicit allocator.
- vec
- Growable contiguous array with an explicit allocator.
Structs§
- U64Hash
Ctx HashContext<u64>using FNV-1a hashing.- Usize
Hash Ctx HashContext<usize>that delegates toU64HashCtx.- Usize
MinCtx OrdContext<usize>that orders elements from smallest to largest (min-heap).
Traits§
- Hash
Context - Provides hashing and equality for keys of type
K. - OrdContext
- Provides a total ordering for elements of type
T.