[][src]Module orga::store

Low-level key/value store abstraction.

Structs

BufStore

Wraps a Store and records mutations in an in-memory map, so that modifications do not affect the underlying Store until flush is called.

NullStore

A dummy implementation of Store which is always empty.

Prefixed

A Store which wraps another Store and appends a prefix byte to the key for every read or write.

RWLog

A Store wrapper which records the keys of all reads and writes made through it.

Shared

A shared reference to a store, allowing the store to be cloned and read from or written to by multiple consumers.

Splitter

A store wrapper which can be used to create multiple substores, which all read from and write to the same underlying store with a unique prefix per substore.

Traits

Flush

A trait for types which contain data that can be flushed to an underlying store.

Iter

An interface for Store implementations which can create iterators over their key/value pairs.

Read

Trait for read access to key/value stores.

Store

Trait for key/value stores, automatically implemented for any type which has both Read and Write.

Write

Trait for write access to key/value stores.

Type Definitions

BufStoreMap

An in-memory map containing values modified by writes to a BufStore.

Entry

A key/value pair emitted from an Iter.

MapStore

A simple Store implementation which persists data in an in-memory map.