Struct disk::composite::AsyncCompositeDiskFile  
source · pub struct AsyncCompositeDiskFile {
    component_disks: Vec<AsyncComponentDiskPart>,
}Fields§
§component_disks: Vec<AsyncComponentDiskPart>Implementations§
source§impl AsyncCompositeDiskFile
 
impl AsyncCompositeDiskFile
fn length(&self) -> u64
fn disk_at_offset(&self, offset: u64) -> Result<&AsyncComponentDiskPart>
fn disks_in_range<'a>( &'a self, range: &Range<u64>, ) -> Vec<&'a AsyncComponentDiskPart>
Trait Implementations§
source§impl AsyncDisk for AsyncCompositeDiskFile
 
impl AsyncDisk for AsyncCompositeDiskFile
source§fn flush<'life0, 'async_trait>(
    &'life0 self,
) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
 
fn flush<'life0, 'async_trait>(
    &'life0 self,
) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
Flush intermediary buffers and/or dirty state to file. fsync not required.
source§fn fsync<'life0, 'async_trait>(
    &'life0 self,
) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
 
fn fsync<'life0, 'async_trait>(
    &'life0 self,
) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
Asynchronously fsyncs any completed operations to the disk.
source§fn fdatasync<'life0, 'async_trait>(
    &'life0 self,
) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
 
fn fdatasync<'life0, 'async_trait>(
    &'life0 self,
) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
Asynchronously fdatasyncs any completed operations to the disk.
Note that an implementation may simply call fsync for fdatasync.
source§fn read_to_mem<'a, 'async_trait>(
    &'a self,
    file_offset: u64,
    mem: Arc<dyn BackingMemory + Send + Sync>,
    mem_offsets: MemRegionIter<'a>,
) -> Pin<Box<dyn Future<Output = Result<usize>> + 'async_trait>>where
    Self: 'async_trait,
    'a: 'async_trait,
 
fn read_to_mem<'a, 'async_trait>(
    &'a self,
    file_offset: u64,
    mem: Arc<dyn BackingMemory + Send + Sync>,
    mem_offsets: MemRegionIter<'a>,
) -> Pin<Box<dyn Future<Output = Result<usize>> + 'async_trait>>where
    Self: 'async_trait,
    'a: 'async_trait,
Reads from the file at ‘file_offset’ into memory 
mem at mem_offsets.
mem_offsets is similar to an iovec except relative to the start of mem.source§fn write_from_mem<'a, 'async_trait>(
    &'a self,
    file_offset: u64,
    mem: Arc<dyn BackingMemory + Send + Sync>,
    mem_offsets: MemRegionIter<'a>,
) -> Pin<Box<dyn Future<Output = Result<usize>> + 'async_trait>>where
    Self: 'async_trait,
    'a: 'async_trait,
 
fn write_from_mem<'a, 'async_trait>(
    &'a self,
    file_offset: u64,
    mem: Arc<dyn BackingMemory + Send + Sync>,
    mem_offsets: MemRegionIter<'a>,
) -> Pin<Box<dyn Future<Output = Result<usize>> + 'async_trait>>where
    Self: 'async_trait,
    'a: 'async_trait,
Writes to the file at ‘file_offset’ from memory 
mem at mem_offsets.source§fn punch_hole<'life0, 'async_trait>(
    &'life0 self,
    file_offset: u64,
    length: u64,
) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
 
fn punch_hole<'life0, 'async_trait>(
    &'life0 self,
    file_offset: u64,
    length: u64,
) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
Replaces a range of bytes with a hole.
source§fn write_zeroes_at<'life0, 'async_trait>(
    &'life0 self,
    file_offset: u64,
    length: u64,
) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
 
fn write_zeroes_at<'life0, 'async_trait>(
    &'life0 self,
    file_offset: u64,
    length: u64,
) -> Pin<Box<dyn Future<Output = Result<()>> + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
Writes up to 
length bytes of zeroes to the stream, returning how many bytes were written.source§fn read_double_buffered<'life0, 'life1, 'async_trait>(
    &'life0 self,
    file_offset: u64,
    buf: &'life1 mut [u8],
) -> Pin<Box<dyn Future<Output = Result<usize>> + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
 
fn read_double_buffered<'life0, 'life1, 'async_trait>(
    &'life0 self,
    file_offset: u64,
    buf: &'life1 mut [u8],
) -> Pin<Box<dyn Future<Output = Result<usize>> + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
Reads from the file at ‘file_offset’ into 
buf. Read moresource§fn write_double_buffered<'life0, 'life1, 'async_trait>(
    &'life0 self,
    file_offset: u64,
    buf: &'life1 [u8],
) -> Pin<Box<dyn Future<Output = Result<usize>> + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
 
fn write_double_buffered<'life0, 'life1, 'async_trait>(
    &'life0 self,
    file_offset: u64,
    buf: &'life1 [u8],
) -> Pin<Box<dyn Future<Output = Result<usize>> + 'async_trait>>where
    Self: 'async_trait,
    'life0: 'async_trait,
    'life1: 'async_trait,
Writes to the file at ‘file_offset’ from 
buf. Read moresource§impl DiskGetLen for AsyncCompositeDiskFile
 
impl DiskGetLen for AsyncCompositeDiskFile
source§impl FileAllocate for AsyncCompositeDiskFile
 
impl FileAllocate for AsyncCompositeDiskFile
Auto Trait Implementations§
impl Freeze for AsyncCompositeDiskFile
impl !RefUnwindSafe for AsyncCompositeDiskFile
impl !Send for AsyncCompositeDiskFile
impl !Sync for AsyncCompositeDiskFile
impl Unpin for AsyncCompositeDiskFile
impl !UnwindSafe for AsyncCompositeDiskFile
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
 
impl<T> BorrowMut<T> for Twhere
    T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
 
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more