write
If the returned number of bytes written is less than requested, the
buffer is full. Returns error.NoSpaceLeft when no bytes would be written.
Note: error.NoSpaceLeft matches the corresponding error from
std.fs.File.WriteError.
Function parameters
Parameters
- self:*Self
- bytes:[]const u8
Deprecated in favor of `std.Io.Reader.fixed` and `std.Io.Writer.fixed`.
Functions
- FixedBufferStream
- Deprecated in favor of `std.Io.Reader.fixed` and `std.Io.Writer.fixed`.
Source
Implementation
pub fn write(self: *Self, bytes: []const u8) WriteError!usize {
if (bytes.len == 0) return 0;
if (self.pos >= self.buffer.len) return error.NoSpaceLeft;
const n = @min(self.buffer.len - self.pos, bytes.len);
@memcpy(self.buffer[self.pos..][0..n], bytes[0..n]);
self.pos += n;
if (n == 0) return error.NoSpaceLeft;
return n;
}