Struct random_access_disk::RandomAccessDisk
source · pub struct RandomAccessDisk { /* private fields */ }
Expand description
Main constructor.
Implementations§
source§impl RandomAccessDisk
impl RandomAccessDisk
sourcepub async fn open(
filename: PathBuf
) -> Result<RandomAccessDisk, RandomAccessError>
pub async fn open( filename: PathBuf ) -> Result<RandomAccessDisk, RandomAccessError>
Create a new (auto-sync) instance to storage at filename
.
Trait Implementations§
source§impl Debug for RandomAccessDisk
impl Debug for RandomAccessDisk
source§impl Drop for RandomAccessDisk
impl Drop for RandomAccessDisk
source§impl RandomAccess for RandomAccessDisk
impl RandomAccess for RandomAccessDisk
source§fn write<'life0, 'life1, 'async_trait>(
&'life0 mut self,
offset: u64,
data: &'life1 [u8]
) -> Pin<Box<dyn Future<Output = Result<(), RandomAccessError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
'life1: 'async_trait,
fn write<'life0, 'life1, 'async_trait>( &'life0 mut self, offset: u64, data: &'life1 [u8] ) -> Pin<Box<dyn Future<Output = Result<(), RandomAccessError>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait, 'life1: 'async_trait,
source§fn read<'life0, 'async_trait>(
&'life0 mut self,
offset: u64,
length: u64
) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, RandomAccessError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn read<'life0, 'async_trait>( &'life0 mut self, offset: u64, length: u64 ) -> Pin<Box<dyn Future<Output = Result<Vec<u8>, RandomAccessError>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Read a sequence of bytes at an
offset
from the backend. Read moresource§fn del<'life0, 'async_trait>(
&'life0 mut self,
offset: u64,
length: u64
) -> Pin<Box<dyn Future<Output = Result<(), RandomAccessError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn del<'life0, 'async_trait>( &'life0 mut self, offset: u64, length: u64 ) -> Pin<Box<dyn Future<Output = Result<(), RandomAccessError>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Delete a sequence of bytes of given
length
at an offset
from the backend.
This either sets the bytes in the given slice to zeroes, or if
offset
+ length
>= RandomAccess::len() is the same as
truncate(offset)
. Read moresource§fn truncate<'life0, 'async_trait>(
&'life0 mut self,
length: u64
) -> Pin<Box<dyn Future<Output = Result<(), RandomAccessError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn truncate<'life0, 'async_trait>( &'life0 mut self, length: u64 ) -> Pin<Box<dyn Future<Output = Result<(), RandomAccessError>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Resize the sequence of bytes so that RandomAccess::len() is set to
length
. If length
< RandomAccess::len(), the bytes are disregarded.
If length
> RandomAccess::len(), the storage is zero-padded. Read moresource§fn len<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<u64, RandomAccessError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn len<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<u64, RandomAccessError>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Get the size of the storage in bytes. Read more
source§fn is_empty<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<bool, RandomAccessError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn is_empty<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<bool, RandomAccessError>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Whether the storage is empty. For some storage backends it may be
cheaper to calculate whether the storage is empty than to calculate the
length. Read more