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§
sourcefn create_metadata(&self) -> Option<Metadata>
fn create_metadata(&self) -> Option<Metadata>
Create metadata.
sourcefn create_readable_transformer(
self: Arc<Self>,
storage: ReadableStorage
) -> ReadableStorage
fn create_readable_transformer( self: Arc<Self>, storage: ReadableStorage ) -> ReadableStorage
Create a readable transformer.
sourcefn create_writable_transformer(
self: Arc<Self>,
storage: WritableStorage
) -> WritableStorage
fn create_writable_transformer( self: Arc<Self>, storage: WritableStorage ) -> WritableStorage
Create a writable transformer.
sourcefn create_readable_writable_transformer(
self: Arc<Self>,
storage: ReadableWritableStorage
) -> ReadableWritableStorage
fn create_readable_writable_transformer( self: Arc<Self>, storage: ReadableWritableStorage ) -> ReadableWritableStorage
Create a readable and writable transformer.
sourcefn create_listable_transformer(
self: Arc<Self>,
storage: ListableStorage
) -> ListableStorage
fn create_listable_transformer( self: Arc<Self>, storage: ListableStorage ) -> ListableStorage
Create a listable transformer.
sourcefn create_readable_listable_transformer(
self: Arc<Self>,
storage: ReadableListableStorage
) -> ReadableListableStorage
fn create_readable_listable_transformer( self: Arc<Self>, storage: ReadableListableStorage ) -> ReadableListableStorage
Create a readable and listable transformer.
sourcefn create_readable_writable_listable_transformer(
self: Arc<Self>,
storage: ReadableWritableListableStorage
) -> ReadableWritableListableStorage
fn create_readable_writable_listable_transformer( self: Arc<Self>, storage: ReadableWritableListableStorage ) -> ReadableWritableListableStorage
Create a readable, writable, and listable transformer.
sourcefn create_async_readable_transformer(
self: Arc<Self>,
storage: AsyncReadableStorage
) -> AsyncReadableStorage
Available on crate feature async
only.
fn create_async_readable_transformer( self: Arc<Self>, storage: AsyncReadableStorage ) -> AsyncReadableStorage
async
only.Create an asynchronous readable transformer.
sourcefn create_async_writable_transformer(
self: Arc<Self>,
storage: AsyncWritableStorage
) -> AsyncWritableStorage
Available on crate feature async
only.
fn create_async_writable_transformer( self: Arc<Self>, storage: AsyncWritableStorage ) -> AsyncWritableStorage
async
only.Create an asynchronous writable transformer.
sourcefn create_async_listable_transformer(
self: Arc<Self>,
storage: AsyncListableStorage
) -> AsyncListableStorage
Available on crate feature async
only.
fn create_async_listable_transformer( self: Arc<Self>, storage: AsyncListableStorage ) -> AsyncListableStorage
async
only.Create an asynchronous listable transformer.
sourcefn create_async_readable_listable_transformer(
self: Arc<Self>,
storage: AsyncReadableListableStorage
) -> AsyncReadableListableStorage
Available on crate feature async
only.
fn create_async_readable_listable_transformer( self: Arc<Self>, storage: AsyncReadableListableStorage ) -> AsyncReadableListableStorage
async
only.Create an asynchronous readable and listable transformer.
sourcefn create_async_readable_writable_listable_transformer(
self: Arc<Self>,
storage: AsyncReadableWritableListableStorage
) -> AsyncReadableWritableListableStorage
Available on crate feature async
only.
fn create_async_readable_writable_listable_transformer( self: Arc<Self>, storage: AsyncReadableWritableListableStorage ) -> AsyncReadableWritableListableStorage
async
only.Create an asynchronous readable, writable, and listable transformer.