Module grin_chain::linked_list
source · [−]Expand description
Implements “linked list” storage primitive for lmdb index supporting multiple entries.
Structs
Index supporting multiple duplicate entries.
Enums
Head|Middle|Tail variants for the linked list entries.
Wrapper for the list to handle either Single
or Multi
entries.
Optimized for the common case where we have a single entry in the list.
Traits
Index supporting a list of (duplicate) entries per commitment. Each entry will be at a unique MMR pos.
Entry maintained in the list index.
Something that tracks pos (in an MMR).
A pruneable list index supports pruning of old data from the index lists. This allows us to efficiently maintain an index of “recent” kernel data. We can maintain a window of 2 weeks of recent data, discarding anything older than this.
Supports “rewind” given the provided commit and a pos to rewind back to.