Trait opendal::raw::LayeredAccessor

source ·
pub trait LayeredAccessor: Send + Sync + Debug + Unpin + 'static {
    type Inner: Accessor;
    type Reader: Read;
    type BlockingReader: BlockingRead;
    type Writer: Write;
    type BlockingWriter: BlockingWrite;
    type Lister: List;
    type BlockingLister: BlockingList;

Show 20 methods // Required methods fn inner(&self) -> &Self::Inner; fn read<'life0, 'life1, 'async_trait>( &'life0 self, path: &'life1 str, args: OpRead ) -> Pin<Box<dyn Future<Output = Result<(RpRead, Self::Reader)>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn write<'life0, 'life1, 'async_trait>( &'life0 self, path: &'life1 str, args: OpWrite ) -> Pin<Box<dyn Future<Output = Result<(RpWrite, Self::Writer)>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn list<'life0, 'life1, 'async_trait>( &'life0 self, path: &'life1 str, args: OpList ) -> Pin<Box<dyn Future<Output = Result<(RpList, Self::Lister)>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait; fn blocking_read( &self, path: &str, args: OpRead ) -> Result<(RpRead, Self::BlockingReader)>; fn blocking_write( &self, path: &str, args: OpWrite ) -> Result<(RpWrite, Self::BlockingWriter)>; fn blocking_list( &self, path: &str, args: OpList ) -> Result<(RpList, Self::BlockingLister)>; // Provided methods fn metadata(&self) -> AccessorInfo { ... } fn create_dir<'life0, 'life1, 'async_trait>( &'life0 self, path: &'life1 str, args: OpCreateDir ) -> Pin<Box<dyn Future<Output = Result<RpCreateDir>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn copy<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, from: &'life1 str, to: &'life2 str, args: OpCopy ) -> Pin<Box<dyn Future<Output = Result<RpCopy>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait { ... } fn rename<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, from: &'life1 str, to: &'life2 str, args: OpRename ) -> Pin<Box<dyn Future<Output = Result<RpRename>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait { ... } fn stat<'life0, 'life1, 'async_trait>( &'life0 self, path: &'life1 str, args: OpStat ) -> Pin<Box<dyn Future<Output = Result<RpStat>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn delete<'life0, 'life1, 'async_trait>( &'life0 self, path: &'life1 str, args: OpDelete ) -> Pin<Box<dyn Future<Output = Result<RpDelete>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn batch<'life0, 'async_trait>( &'life0 self, args: OpBatch ) -> Pin<Box<dyn Future<Output = Result<RpBatch>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait { ... } fn presign<'life0, 'life1, 'async_trait>( &'life0 self, path: &'life1 str, args: OpPresign ) -> Pin<Box<dyn Future<Output = Result<RpPresign>> + Send + 'async_trait>> where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait { ... } fn blocking_create_dir( &self, path: &str, args: OpCreateDir ) -> Result<RpCreateDir> { ... } fn blocking_copy( &self, from: &str, to: &str, args: OpCopy ) -> Result<RpCopy> { ... } fn blocking_rename( &self, from: &str, to: &str, args: OpRename ) -> Result<RpRename> { ... } fn blocking_stat(&self, path: &str, args: OpStat) -> Result<RpStat> { ... } fn blocking_delete(&self, path: &str, args: OpDelete) -> Result<RpDelete> { ... }
}
Expand description

LayeredAccessor is layered accessor that forward all not implemented method to inner.

Required Associated Types§

Required Methods§

source

fn inner(&self) -> &Self::Inner

source

fn read<'life0, 'life1, 'async_trait>( &'life0 self, path: &'life1 str, args: OpRead ) -> Pin<Box<dyn Future<Output = Result<(RpRead, Self::Reader)>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn write<'life0, 'life1, 'async_trait>( &'life0 self, path: &'life1 str, args: OpWrite ) -> Pin<Box<dyn Future<Output = Result<(RpWrite, Self::Writer)>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn list<'life0, 'life1, 'async_trait>( &'life0 self, path: &'life1 str, args: OpList ) -> Pin<Box<dyn Future<Output = Result<(RpList, Self::Lister)>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn blocking_read( &self, path: &str, args: OpRead ) -> Result<(RpRead, Self::BlockingReader)>

source

fn blocking_write( &self, path: &str, args: OpWrite ) -> Result<(RpWrite, Self::BlockingWriter)>

source

fn blocking_list( &self, path: &str, args: OpList ) -> Result<(RpList, Self::BlockingLister)>

Provided Methods§

source

fn metadata(&self) -> AccessorInfo

source

fn create_dir<'life0, 'life1, 'async_trait>( &'life0 self, path: &'life1 str, args: OpCreateDir ) -> Pin<Box<dyn Future<Output = Result<RpCreateDir>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn copy<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, from: &'life1 str, to: &'life2 str, args: OpCopy ) -> Pin<Box<dyn Future<Output = Result<RpCopy>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

source

fn rename<'life0, 'life1, 'life2, 'async_trait>( &'life0 self, from: &'life1 str, to: &'life2 str, args: OpRename ) -> Pin<Box<dyn Future<Output = Result<RpRename>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait, 'life2: 'async_trait,

source

fn stat<'life0, 'life1, 'async_trait>( &'life0 self, path: &'life1 str, args: OpStat ) -> Pin<Box<dyn Future<Output = Result<RpStat>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn delete<'life0, 'life1, 'async_trait>( &'life0 self, path: &'life1 str, args: OpDelete ) -> Pin<Box<dyn Future<Output = Result<RpDelete>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn batch<'life0, 'async_trait>( &'life0 self, args: OpBatch ) -> Pin<Box<dyn Future<Output = Result<RpBatch>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait,

source

fn presign<'life0, 'life1, 'async_trait>( &'life0 self, path: &'life1 str, args: OpPresign ) -> Pin<Box<dyn Future<Output = Result<RpPresign>> + Send + 'async_trait>>
where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,

source

fn blocking_create_dir( &self, path: &str, args: OpCreateDir ) -> Result<RpCreateDir>

source

fn blocking_copy(&self, from: &str, to: &str, args: OpCopy) -> Result<RpCopy>

source

fn blocking_rename( &self, from: &str, to: &str, args: OpRename ) -> Result<RpRename>

source

fn blocking_stat(&self, path: &str, args: OpStat) -> Result<RpStat>

source

fn blocking_delete(&self, path: &str, args: OpDelete) -> Result<RpDelete>

Implementors§