Struct random_access_memory::RandomAccessMemory
source · pub struct RandomAccessMemory { /* private fields */ }
Expand description
In-memory storage for random access
Implementations§
Trait Implementations§
source§impl Debug for RandomAccessMemory
impl Debug for RandomAccessMemory
source§impl Default for RandomAccessMemory
impl Default for RandomAccessMemory
source§impl RandomAccess for RandomAccessMemory
impl RandomAccess for RandomAccessMemory
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 sync_all<'life0, 'async_trait>(
&'life0 mut self
) -> Pin<Box<dyn Future<Output = Result<(), RandomAccessError>> + Send + 'async_trait>>where
Self: 'async_trait,
'life0: 'async_trait,
fn sync_all<'life0, 'async_trait>( &'life0 mut self ) -> Pin<Box<dyn Future<Output = Result<(), RandomAccessError>> + Send + 'async_trait>>where Self: 'async_trait, 'life0: 'async_trait,
Flush buffered data on the underlying storage resource. Read more
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