pub trait StorageTransformerExtension: Debug + Send + Sync {
    // Required methods
    fn create_metadata(&self) -> Option<Metadata>;
    fn create_readable_transformer(
        self: Arc<Self>,
        storage: ReadableStorage
    ) -> ReadableStorage;
    fn create_writable_transformer(
        self: Arc<Self>,
        storage: WritableStorage
    ) -> WritableStorage;
    fn create_readable_writable_transformer(
        self: Arc<Self>,
        storage: ReadableWritableStorage
    ) -> ReadableWritableStorage;
    fn create_listable_transformer(
        self: Arc<Self>,
        storage: ListableStorage
    ) -> ListableStorage;
    fn create_readable_listable_transformer(
        self: Arc<Self>,
        storage: ReadableListableStorage
    ) -> ReadableListableStorage;
    fn create_readable_writable_listable_transformer(
        self: Arc<Self>,
        storage: ReadableWritableListableStorage
    ) -> ReadableWritableListableStorage;
    fn create_async_readable_transformer(
        self: Arc<Self>,
        storage: AsyncReadableStorage
    ) -> AsyncReadableStorage;
    fn create_async_writable_transformer(
        self: Arc<Self>,
        storage: AsyncWritableStorage
    ) -> AsyncWritableStorage;
    fn create_async_listable_transformer(
        self: Arc<Self>,
        storage: AsyncListableStorage
    ) -> AsyncListableStorage;
    fn create_async_readable_listable_transformer(
        self: Arc<Self>,
        storage: AsyncReadableListableStorage
    ) -> AsyncReadableListableStorage;
    fn create_async_readable_writable_listable_transformer(
        self: Arc<Self>,
        storage: AsyncReadableWritableListableStorage
    ) -> AsyncReadableWritableListableStorage;
}
Expand description

A storage transformer extension.

Required Methods§

source

fn create_metadata(&self) -> Option<Metadata>

Create metadata.

source

fn create_readable_transformer( self: Arc<Self>, storage: ReadableStorage ) -> ReadableStorage

Create a readable transformer.

source

fn create_writable_transformer( self: Arc<Self>, storage: WritableStorage ) -> WritableStorage

Create a writable transformer.

source

fn create_readable_writable_transformer( self: Arc<Self>, storage: ReadableWritableStorage ) -> ReadableWritableStorage

Create a readable and writable transformer.

source

fn create_listable_transformer( self: Arc<Self>, storage: ListableStorage ) -> ListableStorage

Create a listable transformer.

source

fn create_readable_listable_transformer( self: Arc<Self>, storage: ReadableListableStorage ) -> ReadableListableStorage

Create a readable and listable transformer.

source

fn create_readable_writable_listable_transformer( self: Arc<Self>, storage: ReadableWritableListableStorage ) -> ReadableWritableListableStorage

Create a readable, writable, and listable transformer.

source

fn create_async_readable_transformer( self: Arc<Self>, storage: AsyncReadableStorage ) -> AsyncReadableStorage

Available on crate feature async only.

Create an asynchronous readable transformer.

source

fn create_async_writable_transformer( self: Arc<Self>, storage: AsyncWritableStorage ) -> AsyncWritableStorage

Available on crate feature async only.

Create an asynchronous writable transformer.

source

fn create_async_listable_transformer( self: Arc<Self>, storage: AsyncListableStorage ) -> AsyncListableStorage

Available on crate feature async only.

Create an asynchronous listable transformer.

source

fn create_async_readable_listable_transformer( self: Arc<Self>, storage: AsyncReadableListableStorage ) -> AsyncReadableListableStorage

Available on crate feature async only.

Create an asynchronous readable and listable transformer.

source

fn create_async_readable_writable_listable_transformer( self: Arc<Self>, storage: AsyncReadableWritableListableStorage ) -> AsyncReadableWritableListableStorage

Available on crate feature async only.

Create an asynchronous readable, writable, and listable transformer.

Implementors§