Expand description
Note: there are “std” and “serde_support” feature flags
Modules§
- arena_
iterators - Iterators for
Arena - chain_
iterators - Iterators for
ChainArena - ord_
iterators - Iterators for
OrdArena - surject_
iterators - Iterators for
SurjectArena - utils
- Special utilities for advanced usage
Macros§
- ptr_
struct - Convenience macro for quickly making new structs that implement
Ptr. The index and generation types can be changed to be smaller for less memory footprint in exchange for smaller maximum arena capacity and generations.
Structs§
- Arena
- An arena supporting non-Clone
T(Thas no requirements other thanSized, but some traits are only active ifTimplements them), deletion, and optional generation counters. - Chain
Arena - A doubly-linked-list based on an arena for handling usecases involving
O(1)insertion, deletion, and other functions on linear lists of elements that we call “chains” of “links”. Multiple separate chains and cyclical chains are supported. - Link
- This represents a link in a
ChainArenathat has a publict: Tfield andOption<Ptr<P>>interlinks to the previous and next links. - OrdArena
- An Ordered Arena with three parameters: a
P: Ptrtype that gives single indirection access to elements, aK: Ordkey type that is used to define an ordering among elements, and aVvalue type that is not ordered over but is associated with eachK.O(log n)insertions, finds, and deletions are guaranteed. - Surject
Arena - A generalization of an
Arenawith three parameters: aP: Ptrtype, aKkey type, and aVvalue type. EachPpoints to a singleKlike in a normal arena, but multiplePcan point to a singleVin a surjective map structure. When allPtrs to a singleVare removed, theVis removed as well. Efficient union-find functionality is also possible.
Traits§
- Advancer
- A different kind of iterator that does not borrow the collection.
- Arena
Trait - A trait that encapsulates some common functions across the different arena types. Intended for functions that want to be generic over the arenas.
- Ptr
- A trait containing index and generation information for the
Arenatype. - Recast
- A trait implemented for structures that have
Items that should beRecasted by aRecaster. - Recaster
- A trait implemented for structures that can act as a
RecasterinRecastingItems.