Trait infinitree::fields::intent::Store

source ·
pub trait Store {
    // Required method
    fn store(
        &mut self,
        transaction: &mut dyn Transaction,
        object: &mut dyn Writer,
    );
}
Expand description

Store data into the index.

This trait is usually implemented on a type that also implements Strategy, and not on the field directly.

Required Methods§

source

fn store(&mut self, transaction: &mut dyn Transaction, object: &mut dyn Writer)

Store the contents of the field into the index. The field itself needs to track whether this should be a complete rewrite or an upsert.

The transaction parameter is provided for strategies to store values in the index, while the object is to store values in the object pool.

Typically, the ChunkPointer values returned by object should be stored in the index.

Implementors§

source§

impl<K, V> Store for LocalField<Map<K, V>>
where K: Key, V: Value,

source§

impl<K, V> Store for SparseField<Map<K, V>>
where K: Key, V: Value,

source§

impl<K, V> Store for SparseField<VersionedMap<K, V>>
where K: Key + Clone, V: Value,

source§

impl<K, V> Store for VersionedMap<K, V>
where K: Key + Clone, V: Value,

source§

impl<T> Store for LocalField<LinkedList<T>>
where T: Value,

source§

impl<T> Store for LocalField<Serialized<T>>
where T: Serialize + Sync,

source§

impl<T> Store for LocalField<List<T>>
where T: Value,

source§

impl<T> Store for SparseField<LinkedList<T>>
where T: Value,

source§

impl<T> Store for SparseField<List<T>>
where T: Value,

source§

impl<T: Store> Store for LocalField<T>