pub trait Storage: Send + Sync {
// Required methods
fn write(&mut self, buf: &[u8]) -> Result<usize>;
fn sync(&mut self) -> Result<()>;
fn close(&mut self) -> Result<()>;
fn size(&self) -> Result<u64>;
fn truncate(&mut self, size: u64) -> Result<()>;
fn read_at(&self, buf: &mut [u8], offset: u64) -> Result<usize>;
}Expand description
Required Methods§
Sourcefn write(&mut self, buf: &[u8]) -> Result<usize>
fn write(&mut self, buf: &[u8]) -> Result<usize>
Appends data. The WAL does not seek before writing.
Sourcefn close(&mut self) -> Result<()>
fn close(&mut self) -> Result<()>
Releases all resources. After close, all methods must return
Error::Closed.