Skip to main content

BlockStorageExt

Trait BlockStorageExt 

Source
pub trait BlockStorageExt: BlockStorage {
    // Provided methods
    async fn get_value<T, L>(&self, link: &L) -> Result<T, StorageError>
       where T: Send + Sync + DeserializeOwned,
             L: Linkable<T> + Send + Sync { ... }
    async fn get_value_or_default<T>(
        &self,
        link: &OptionLink<T>,
    ) -> Result<T, StorageError>
       where T: Send + Sync + DeserializeOwned + Default { ... }
    async fn get_value_or_none<T>(
        &self,
        link: &OptionLink<T>,
    ) -> Result<Option<T>, StorageError>
       where T: Send + Sync + DeserializeOwned { ... }
    async fn set_value<T>(&self, value: &T) -> Result<Link<T>, StorageError>
       where T: Send + Sync + Serialize { ... }
    async fn get_deserialized<T>(
        &self,
        item: &Cid<64>,
    ) -> Result<T, StorageError>
       where T: Send + Sync + DeserializeOwned { ... }
    async fn set_serialized<T>(
        &self,
        value: &T,
    ) -> Result<Cid<64>, StorageError>
       where T: Send + Sync + Serialize { ... }
    async fn get_default<T>(
        &self,
        item: &Option<Cid<64>>,
    ) -> Result<T, StorageError>
       where T: Send + Sync + Default + DeserializeOwned { ... }
}

Provided Methods§

Source

async fn get_value<T, L>(&self, link: &L) -> Result<T, StorageError>
where T: Send + Sync + DeserializeOwned, L: Linkable<T> + Send + Sync,

Get value from link.

Source

async fn get_value_or_default<T>( &self, link: &OptionLink<T>, ) -> Result<T, StorageError>

Get value or default from link.

Source

async fn get_value_or_none<T>( &self, link: &OptionLink<T>, ) -> Result<Option<T>, StorageError>
where T: Send + Sync + DeserializeOwned,

Get value or default from link.

Source

async fn set_value<T>(&self, value: &T) -> Result<Link<T>, StorageError>
where T: Send + Sync + Serialize,

Create link for value.

Source

async fn get_deserialized<T>(&self, item: &Cid<64>) -> Result<T, StorageError>
where T: Send + Sync + DeserializeOwned,

Get deserialized value.

Source

async fn set_serialized<T>(&self, value: &T) -> Result<Cid<64>, StorageError>
where T: Send + Sync + Serialize,

Set serialized value.

Source

async fn get_default<T>( &self, item: &Option<Cid<64>>, ) -> Result<T, StorageError>

Get deserialized value.

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<T> BlockStorageExt for T
where T: BlockStorage + ?Sized,