Trait ReadableMultimapTable

Source
pub trait ReadableMultimapTable<K: RedbKey + 'static, V: RedbKey + 'static>: Sealed {
    // Required methods
    fn get<'a>(
        &self,
        key: impl Borrow<K::SelfType<'a>>,
    ) -> Result<MultimapValue<'_, V>, StorageError>
       where K: 'a;
    fn range<'a, KR>(
        &self,
        range: impl RangeBounds<KR> + 'a,
    ) -> Result<MultimapRange<'_, K, V>, StorageError>
       where K: 'a,
             KR: Borrow<K::SelfType<'a>> + 'a;
    fn stats(&self) -> Result<TableStats, StorageError>;
    fn len(&self) -> Result<u64, StorageError>;
    fn is_empty(&self) -> Result<bool, StorageError>;

    // Provided method
    fn iter(&self) -> Result<MultimapRange<'_, K, V>, StorageError> { ... }
}

Required Methods§

Source

fn get<'a>( &self, key: impl Borrow<K::SelfType<'a>>, ) -> Result<MultimapValue<'_, V>, StorageError>
where K: 'a,

Returns an iterator over all values for the given key. Values are in ascending order.

Source

fn range<'a, KR>( &self, range: impl RangeBounds<KR> + 'a, ) -> Result<MultimapRange<'_, K, V>, StorageError>
where K: 'a, KR: Borrow<K::SelfType<'a>> + 'a,

Source

fn stats(&self) -> Result<TableStats, StorageError>

Retrieves information about storage usage for the table

Source

fn len(&self) -> Result<u64, StorageError>

Source

fn is_empty(&self) -> Result<bool, StorageError>

Provided Methods§

Source

fn iter(&self) -> Result<MultimapRange<'_, K, V>, StorageError>

Returns an double-ended iterator over all elements in the table. Values are in ascending order.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementors§

Source§

impl<'db, 'txn, K: RedbKey + 'static, V: RedbKey + 'static> ReadableMultimapTable<K, V> for MultimapTable<'db, 'txn, K, V>

Source§

impl<'txn, K: RedbKey + 'static, V: RedbKey + 'static> ReadableMultimapTable<K, V> for ReadOnlyMultimapTable<'txn, K, V>