Function discardDelimiterInclusive [src]

Reads from the stream until specified byte is found, discarding all data, including the delimiter. Returns number of bytes discarded, or error.EndOfStream if the delimiter is not found. See also: discardDelimiterExclusive discardDelimiterLimit

Prototype

pub fn discardDelimiterInclusive(r: *Reader, delimiter: u8) Error!usize

Parameters

r: *Readerdelimiter: u8

Possible Errors

EndOfStream
ReadFailed

See the Reader implementation for detailed diagnostics.

Example

test discardDelimiterInclusive { var r: Reader = .fixed("foob\nar"); try testing.expectEqual(5, try r.discardDelimiterInclusive('\n')); try testing.expectError(error.EndOfStream, r.discardDelimiterInclusive('\n')); }

Source

pub fn discardDelimiterInclusive(r: *Reader, delimiter: u8) Error!usize { const n = discardDelimiterLimit(r, delimiter, .unlimited) catch |err| switch (err) { error.StreamTooLong => unreachable, // unlimited is passed else => |e| return e, }; if (r.seek == r.end) return error.EndOfStream; assert(r.buffer[r.seek] == delimiter); toss(r, 1); return n + 1; }