1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
//! **Stratum 14 — Collections**
//!
//! Persistent and mutable data structures built from Strata 0–13.
//!
//! All persistent types are backed by the [`im`] crate (re-exported as
//! `id_effect::im`). The free functions mirror Effect.ts naming so that code can
//! be written in the same style as the TypeScript effect system.
//!
//! ## Persistent collections (backed by `im`)
//!
//! | Submodule | Type alias | Underlying `im` type | Notes |
//! |-----------|-----------|----------------------|-------|
//! | [`hash_map`] | [`EffectHashMap`] | `im::HashMap` | HAMT, O(1) avg |
//! | [`hash_set`] | [`EffectHashSet`] | `im::HashSet` | HAMT, O(1) avg |
//! | [`sorted_map`] | [`EffectSortedMap`] | `im::OrdMap` | B-tree, O(log n) |
//! | [`sorted_set`] | [`EffectSortedSet`] | `im::OrdSet` | B-tree, O(log n) |
//! | [`vector`] | [`EffectVector`] | `im::Vector` | RRB-tree, O(log n) |
//! | [`red_black_tree`] | [`RedBlackTree`] | `im::OrdMap` multimap | Ordered multi-map |
//!
//! ## Mutable collections (stdlib-backed, `Mutex`-guarded)
//!
//! | Submodule | Type | Notes |
//! |-----------|------|-------|
//! | [`mutable_list`] | [`MutableList`], [`ChunkBuilder`] | Deque with shared `append`/`prepend` |
//! | [`mutable_queue`] | [`MutableQueue`] | Bounded/unbounded FIFO |
//! | [`trie`] | [`Trie`] | Prefix-tree, `str`-keyed |
pub use ;
pub use ;
pub use ;
pub use MutableQueue;
pub use RedBlackTree;
pub use EffectSortedMap;
pub use EffectSortedSet;
pub use Trie;
pub use EffectVector;