Struct cacache::SyncWriter
source · pub struct SyncWriter { /* private fields */ }Expand description
A reference to an open file writing to the cache.
Implementations§
source§impl SyncWriter
impl SyncWriter
sourcepub fn create<P, K>(cache: P, key: K) -> Result<SyncWriter>where
P: AsRef<Path>,
K: AsRef<str>,
pub fn create<P, K>(cache: P, key: K) -> Result<SyncWriter>where P: AsRef<Path>, K: AsRef<str>,
Creates a new writable file handle into the cache.
Example
use std::io::prelude::*;
fn main() -> cacache::Result<()> {
let mut fd = cacache::SyncWriter::create("./my-cache", "my-key")?;
fd.write_all(b"hello world").expect("Failed to write to cache");
// Data is not saved into the cache until you commit it.
fd.commit()?;
Ok(())
}Trait Implementations§
source§impl Write for SyncWriter
impl Write for SyncWriter
source§fn write(&mut self, buf: &[u8]) -> Result<usize>
fn write(&mut self, buf: &[u8]) -> Result<usize>
Write a buffer into this writer, returning how many bytes were written. Read more
source§fn flush(&mut self) -> Result<()>
fn flush(&mut self) -> Result<()>
Flush this output stream, ensuring that all intermediately buffered
contents reach their destination. Read more
source§fn is_write_vectored(&self) -> bool
fn is_write_vectored(&self) -> bool
🔬This is a nightly-only experimental API. (
can_vector)1.0.0 · source§fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
fn write_all(&mut self, buf: &[u8]) -> Result<(), Error>
Attempts to write an entire buffer into this writer. Read more
source§fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>
fn write_all_vectored(&mut self, bufs: &mut [IoSlice<'_>]) -> Result<(), Error>
🔬This is a nightly-only experimental API. (
write_all_vectored)Attempts to write multiple buffers into this writer. Read more