mirror of
https://github.com/ziglang/zig.git
synced 2026-01-16 12:25:21 +00:00
std.io.BufferedReader: add readRemaining
This commit is contained in:
parent
cbe5920975
commit
b3da216f1b
@ -90,6 +90,20 @@ pub fn readAll(br: *BufferedReader, bw: *BufferedWriter, limit: Reader.Limit) Re
|
||||
}
|
||||
}
|
||||
|
||||
/// "Pump" data from the reader to the writer, handling `error.EndOfStream` as
|
||||
/// a success case.
|
||||
///
|
||||
/// Returns total number of bytes written to `bw`.
|
||||
pub fn readRemaining(br: *BufferedReader, bw: *BufferedWriter) Reader.RwRemainingError!usize {
|
||||
var offset: usize = 0;
|
||||
while (true) {
|
||||
offset += br.read(bw, .unlimited) catch |err| switch (err) {
|
||||
error.EndOfStream => return offset,
|
||||
else => |e| return e,
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
/// Equivalent to `readVec` but reads at most `limit` bytes.
|
||||
pub fn readVecLimit(br: *BufferedReader, data: []const []u8, limit: Reader.Limit) Reader.Error!usize {
|
||||
_ = br;
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user