DoxigAlpha

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;
}