[][src]Module grin_chain::linked_list

Implements "linked list" storage primitive for lmdb index supporting multiple entries.

Structs

MultiIndex

Index supporting multiple duplicate entries.

Enums

ListEntry

Head|Middle|Tail variants for the linked list entries.

ListWrapper

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

ListIndex

Index supporting a list of (duplicate) entries per commitment. Each entry will be at a unique MMR pos.

ListIndexEntry

Entry maintained in the list index.

PosEntry

Something that tracks pos (in an MMR).

PruneableListIndex

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.

RewindableListIndex

Supports "rewind" given the provided commit and a pos to rewind back to.