[−][src]Struct asuran::repository::backend::common::sync_backend::BackendHandle
Wrapper Type for sync backends that converts them into async backends
Functions by moving the provided back end into a dedicated tokio task, and then sending SyncCommands
to instruct that task on what to do.
Methods
impl<B> BackendHandle<B> where
B: SyncBackend + Send + 'static,
[src]
B: SyncBackend + Send + 'static,
Trait Implementations
impl<B: SyncBackend> Backend for BackendHandle<B>
[src]
type Manifest = Self
type Index = Self
fn get_index(&self) -> Self::Index
[src]
fn write_key<'life0, 'life1, 'async_trait>(
&'life0 self,
key: &'life1 EncryptedKey
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
[src]
&'life0 self,
key: &'life1 EncryptedKey
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
'life1: 'async_trait,
Self: 'async_trait,
fn read_key<'life0, 'async_trait>(
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<EncryptedKey>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 self
) -> Pin<Box<dyn Future<Output = Result<EncryptedKey>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn get_manifest(&self) -> Self::Manifest
[src]
fn read_chunk<'life0, 'async_trait>(
&'life0 mut self,
location: SegmentDescriptor
) -> Pin<Box<dyn Future<Output = Result<Chunk>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self,
location: SegmentDescriptor
) -> Pin<Box<dyn Future<Output = Result<Chunk>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn write_chunk<'life0, 'async_trait>(
&'life0 mut self,
chunk: Chunk
) -> Pin<Box<dyn Future<Output = Result<SegmentDescriptor>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self,
chunk: Chunk
) -> Pin<Box<dyn Future<Output = Result<SegmentDescriptor>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn close<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = ()> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn get_object_handle(&self) -> BackendObject
[src]
impl<B: SyncBackend> Clone for BackendHandle<B>
[src]
fn clone(&self) -> Self
[src]
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl<B: SyncBackend> Debug for BackendHandle<B>
[src]
impl<B: SyncBackend> Index for BackendHandle<B>
[src]
fn lookup_chunk<'life0, 'async_trait>(
&'life0 mut self,
id: ChunkID
) -> Pin<Box<dyn Future<Output = Option<SegmentDescriptor>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self,
id: ChunkID
) -> Pin<Box<dyn Future<Output = Option<SegmentDescriptor>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn set_chunk<'life0, 'async_trait>(
&'life0 mut self,
id: ChunkID,
location: SegmentDescriptor
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self,
id: ChunkID,
location: SegmentDescriptor
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn known_chunks<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = HashSet<ChunkID>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = HashSet<ChunkID>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn commit_index<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn count_chunk<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = usize> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = usize> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
impl<B: SyncBackend> Manifest for BackendHandle<B>
[src]
type Iterator = <<B as SyncBackend>::SyncManifest as SyncManifest>::Iterator
fn last_modification<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<DateTime<FixedOffset>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<DateTime<FixedOffset>>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn chunk_settings<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = ChunkSettings> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = ChunkSettings> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn archive_iterator<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Self::Iterator> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Self::Iterator> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn write_chunk_settings<'life0, 'async_trait>(
&'life0 mut self,
settings: ChunkSettings
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self,
settings: ChunkSettings
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn write_archive<'life0, 'async_trait>(
&'life0 mut self,
archive: StoredArchive
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self,
archive: StoredArchive
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
fn touch<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
[src]
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<()>> + Send + 'async_trait>> where
'life0: 'async_trait,
Self: 'async_trait,
Auto Trait Implementations
impl<B> !RefUnwindSafe for BackendHandle<B>
impl<B> Send for BackendHandle<B> where
<<B as SyncBackend>::SyncManifest as SyncManifest>::Iterator: Send,
<B as SyncBackend>::SyncManifest: SyncManifest,
<<B as SyncBackend>::SyncManifest as SyncManifest>::Iterator: Send,
<B as SyncBackend>::SyncManifest: SyncManifest,
impl<B> Sync for BackendHandle<B> where
<<B as SyncBackend>::SyncManifest as SyncManifest>::Iterator: Send,
<B as SyncBackend>::SyncManifest: SyncManifest,
<<B as SyncBackend>::SyncManifest as SyncManifest>::Iterator: Send,
<B as SyncBackend>::SyncManifest: SyncManifest,
impl<B> Unpin for BackendHandle<B> where
<B as SyncBackend>::SyncManifest: SyncManifest,
<B as SyncBackend>::SyncManifest: SyncManifest,
impl<B> !UnwindSafe for BackendHandle<B>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BackendClone for T where
T: Backend + Clone + ?Sized,
[src]
T: Backend + Clone + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T> Instrument for T
[src]
fn instrument(self, span: Span) -> Instrumented<Self>
[src]
fn in_current_span(self) -> Instrumented<Self>
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,
fn vzip(self) -> V
impl<T> WithSubscriber for T
[src]
fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> where
S: Into<Dispatch>,
[src]
S: Into<Dispatch>,