Struct Writer
pub struct Writer {
file: File,
}Expand description
Appends journal bytes to a file.
Each call to append writes the raw bytes and calls
sync_data to ensure durability.
Fields§
§file: FileImplementations§
§impl Writer
impl Writer
pub async fn open(path: &Path) -> Result<Self>
pub async fn open(path: &Path) -> Result<Self>
Open (or create) a journal file for appending.
If the file does not exist a fresh header is written. If it already exists, new entries will be appended after the existing data.
§Errors
Returns an I/O error if the file cannot be opened or the header cannot be written.
pub async fn compact(&mut self, session: &InMemorySession) -> Result<()>
pub async fn compact(&mut self, session: &InMemorySession) -> Result<()>
Rewrite the journal with a compact snapshot of the current session.
This replaces the entire file contents with store ops that reproduce the session’s current state, eliminating redundant history.
§Errors
Returns an I/O error if the file cannot be truncated or written.
async fn write_header(&mut self) -> Result<()>
Auto Trait Implementations§
impl !Freeze for Writer
impl !RefUnwindSafe for Writer
impl Send for Writer
impl Sync for Writer
impl Unpin for Writer
impl UnwindSafe for Writer
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