Function writableSliceGreedyPreserve [src]

Asserts the provided buffer has total capacity enough for minimum_len and preserve combined. Does not advance the buffer end position. When draining the buffer, ensures that at least preserve bytes remain buffered. If preserve is zero, this is equivalent to writableSliceGreedy.

Prototype

pub fn writableSliceGreedyPreserve(w: *Writer, preserve: usize, minimum_len: usize) Error![]u8

Parameters

w: *Writerpreserve: usizeminimum_len: usize

Possible Errors

WriteFailed

See the Writer implementation for detailed diagnostics.

Source

pub fn writableSliceGreedyPreserve(w: *Writer, preserve: usize, minimum_len: usize) Error![]u8 { if (w.buffer.len - w.end >= minimum_len) { @branchHint(.likely); return w.buffer[w.end..]; } try rebase(w, preserve, minimum_len); assert(w.buffer.len >= preserve + minimum_len); return w.buffer[w.end..]; }