authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2025-05-28 15:44:42-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2025-07-01 16:35:29-07:00
log2f5574ac083a4a14ab603b7f848d135fbba3c1ed
treef252762299f18d7b20bdfb89db355a90bc948497
parent3ef75356f6f5f1be170006c122c16df56961cf15

std: finish renaming RwError to StreamError


13 files changed, 27 insertions(+), 61 deletions(-)

lib/std/compress/flate/Compress.zig+1-1
...@@ -769,7 +769,7 @@ fn read(...@@ -769,7 +769,7 @@ fn read(
769 context: ?*anyopaque,769 context: ?*anyopaque,
770 bw: *std.io.BufferedWriter,770 bw: *std.io.BufferedWriter,
771 limit: std.io.Limit,771 limit: std.io.Limit,
772) std.io.Reader.RwError!usize {772) std.io.Reader.StreamError!usize {
773 const c: *Compress = @ptrCast(@alignCast(context));773 const c: *Compress = @ptrCast(@alignCast(context));
774 switch (c.state) {774 switch (c.state) {
775 .header => |i| {775 .header => |i| {
lib/std/compress/flate/Decompress.zig+1-1
...@@ -143,7 +143,7 @@ pub fn read(...@@ -143,7 +143,7 @@ pub fn read(
143 context: ?*anyopaque,143 context: ?*anyopaque,
144 bw: *std.io.BufferedWriter,144 bw: *std.io.BufferedWriter,
145 limit: std.io.Limit,145 limit: std.io.Limit,
146) std.io.Reader.RwError!usize {146) std.io.Reader.StreamError!usize {
147 const d: *Decompress = @alignCast(@ptrCast(context));147 const d: *Decompress = @alignCast(@ptrCast(context));
148 return readInner(d, bw, limit) catch |err| switch (err) {148 return readInner(d, bw, limit) catch |err| switch (err) {
149 error.EndOfStream => return error.EndOfStream,149 error.EndOfStream => return error.EndOfStream,
lib/std/compress/lzma2.zig+1-1
...@@ -2,7 +2,7 @@ const std = @import("../std.zig");...@@ -2,7 +2,7 @@ const std = @import("../std.zig");
2const Allocator = std.mem.Allocator;2const Allocator = std.mem.Allocator;
3const lzma = std.compress.lzma;3const lzma = std.compress.lzma;
44
5pub fn decompress(gpa: Allocator, reader: *std.io.BufferedReader, writer: *std.io.BufferedWriter) std.io.Reader.RwError!void {5pub fn decompress(gpa: Allocator, reader: *std.io.BufferedReader, writer: *std.io.BufferedWriter) std.io.Reader.StreamError!void {
6 var decoder = try Decode.init(gpa);6 var decoder = try Decode.init(gpa);
7 defer decoder.deinit(gpa);7 defer decoder.deinit(gpa);
8 return decoder.decompress(gpa, reader, writer);8 return decoder.decompress(gpa, reader, writer);
lib/std/compress/zstd/Decompress.zig+1-1
...@@ -78,7 +78,7 @@ pub fn reader(self: *Decompress) Reader {...@@ -78,7 +78,7 @@ pub fn reader(self: *Decompress) Reader {
78 };78 };
79}79}
8080
81fn read(context: ?*anyopaque, bw: *BufferedWriter, limit: Limit) Reader.RwError!usize {81fn read(context: ?*anyopaque, bw: *BufferedWriter, limit: Limit) Reader.StreamError!usize {
82 const d: *Decompress = @ptrCast(@alignCast(context));82 const d: *Decompress = @ptrCast(@alignCast(context));
83 const in = d.input;83 const in = d.input;
8484
lib/std/crypto/tls/Client.zig+1-1
...@@ -1043,7 +1043,7 @@ pub fn eof(c: Client) bool {...@@ -1043,7 +1043,7 @@ pub fn eof(c: Client) bool {
1043 return c.received_close_notify;1043 return c.received_close_notify;
1044}1044}
10451045
1046fn read(context: ?*anyopaque, bw: *std.io.BufferedWriter, limit: std.io.Limit) Reader.RwError!usize {1046fn read(context: ?*anyopaque, bw: *std.io.BufferedWriter, limit: std.io.Limit) Reader.StreamError!usize {
1047 const c: *Client = @ptrCast(@alignCast(context));1047 const c: *Client = @ptrCast(@alignCast(context));
1048 if (c.eof()) return error.EndOfStream;1048 if (c.eof()) return error.EndOfStream;
1049 const input = c.input;1049 const input = c.input;
lib/std/http.zig+3-3
...@@ -508,7 +508,7 @@ pub const Reader = struct {...@@ -508,7 +508,7 @@ pub const Reader = struct {
508 ctx: ?*anyopaque,508 ctx: ?*anyopaque,
509 bw: *std.io.BufferedWriter,509 bw: *std.io.BufferedWriter,
510 limit: std.io.Limit,510 limit: std.io.Limit,
511 ) std.io.Reader.RwError!usize {511 ) std.io.Reader.StreamError!usize {
512 const reader: *Reader = @alignCast(@ptrCast(ctx));512 const reader: *Reader = @alignCast(@ptrCast(ctx));
513 const remaining_content_length = &reader.state.body_remaining_content_length;513 const remaining_content_length = &reader.state.body_remaining_content_length;
514 const remaining = remaining_content_length.*;514 const remaining = remaining_content_length.*;
...@@ -551,7 +551,7 @@ pub const Reader = struct {...@@ -551,7 +551,7 @@ pub const Reader = struct {
551 ctx: ?*anyopaque,551 ctx: ?*anyopaque,
552 bw: *std.io.BufferedWriter,552 bw: *std.io.BufferedWriter,
553 limit: std.io.Limit,553 limit: std.io.Limit,
554 ) std.io.Reader.RwError!usize {554 ) std.io.Reader.StreamError!usize {
555 const reader: *Reader = @alignCast(@ptrCast(ctx));555 const reader: *Reader = @alignCast(@ptrCast(ctx));
556 const chunk_len_ptr = switch (reader.state) {556 const chunk_len_ptr = switch (reader.state) {
557 .ready => return error.EndOfStream,557 .ready => return error.EndOfStream,
...@@ -577,7 +577,7 @@ pub const Reader = struct {...@@ -577,7 +577,7 @@ pub const Reader = struct {
577 bw: *std.io.BufferedWriter,577 bw: *std.io.BufferedWriter,
578 limit: std.io.Limit,578 limit: std.io.Limit,
579 chunk_len_ptr: *RemainingChunkLen,579 chunk_len_ptr: *RemainingChunkLen,
580 ) (BodyError || std.io.Reader.RwError)!usize {580 ) (BodyError || std.io.Reader.StreamError)!usize {
581 const in = reader.in;581 const in = reader.in;
582 len: switch (chunk_len_ptr.*) {582 len: switch (chunk_len_ptr.*) {
583 .head => {583 .head => {
lib/std/io/BufferedReader.zig+4-4
...@@ -104,7 +104,7 @@ pub fn readAll(br: *BufferedReader, bw: *BufferedWriter, limit: Limit) Reader.St...@@ -104,7 +104,7 @@ pub fn readAll(br: *BufferedReader, bw: *BufferedWriter, limit: Limit) Reader.St
104/// a success case.104/// a success case.
105///105///
106/// Returns total number of bytes written to `bw`.106/// Returns total number of bytes written to `bw`.
107pub fn readRemaining(br: *BufferedReader, bw: *BufferedWriter) Reader.RwRemainingError!usize {107pub fn readRemaining(br: *BufferedReader, bw: *BufferedWriter) Reader.StreamRemainingError!usize {
108 var offset: usize = 0;108 var offset: usize = 0;
109 while (true) {109 while (true) {
110 offset += br.read(bw, .unlimited) catch |err| switch (err) {110 offset += br.read(bw, .unlimited) catch |err| switch (err) {
...@@ -720,7 +720,7 @@ pub fn readDelimiterEnding(...@@ -720,7 +720,7 @@ pub fn readDelimiterEnding(
720 br: *BufferedReader,720 br: *BufferedReader,
721 bw: *BufferedWriter,721 bw: *BufferedWriter,
722 delimiter: u8,722 delimiter: u8,
723) Reader.RwRemainingError!usize {723) Reader.StreamRemainingError!usize {
724 const amount, const to = try br.readAny(bw, delimiter, .unlimited);724 const amount, const to = try br.readAny(bw, delimiter, .unlimited);
725 return switch (to) {725 return switch (to) {
726 .delimiter, .end => amount,726 .delimiter, .end => amount,
...@@ -728,7 +728,7 @@ pub fn readDelimiterEnding(...@@ -728,7 +728,7 @@ pub fn readDelimiterEnding(
728 };728 };
729}729}
730730
731pub const StreamDelimiterLimitedError = Reader.RwRemainingError || error{731pub const StreamDelimiterLimitedError = Reader.StreamRemainingError || error{
732 /// Stream ended before the delimiter was found.732 /// Stream ended before the delimiter was found.
733 EndOfStream,733 EndOfStream,
734 /// The delimiter was not found within the limit.734 /// The delimiter was not found within the limit.
...@@ -758,7 +758,7 @@ fn readAny(...@@ -758,7 +758,7 @@ fn readAny(
758 bw: *BufferedWriter,758 bw: *BufferedWriter,
759 delimiter: ?u8,759 delimiter: ?u8,
760 limit: Limit,760 limit: Limit,
761) Reader.RwRemainingError!struct { usize, enum { delimiter, limit, end } } {761) Reader.StreamRemainingError!struct { usize, enum { delimiter, limit, end } } {
762 var amount: usize = 0;762 var amount: usize = 0;
763 var remaining = limit;763 var remaining = limit;
764 while (remaining.nonzero()) {764 while (remaining.nonzero()) {
lib/std/io/Reader.zig+9-9
...@@ -46,7 +46,7 @@ pub const VTable = struct {...@@ -46,7 +46,7 @@ pub const VTable = struct {
46 /// provided which is based on calling `read`, borrowing46 /// provided which is based on calling `read`, borrowing
47 /// `BufferedReader.buffer` to construct a temporary `BufferedWriter` and47 /// `BufferedReader.buffer` to construct a temporary `BufferedWriter` and
48 /// ignoring the written data.48 /// ignoring the written data.
49 discard: *const fn (context: ?*anyopaque, limit: Limit) DiscardError!usize = null,49 discard: *const fn (context: ?*anyopaque, limit: Limit) Error!usize = null,
50};50};
5151
52pub const StreamError = error{52pub const StreamError = error{
...@@ -59,13 +59,13 @@ pub const StreamError = error{...@@ -59,13 +59,13 @@ pub const StreamError = error{
59 EndOfStream,59 EndOfStream,
60};60};
6161
62pub const DiscardError = error{62pub const Error = error{
63 /// See the `Reader` implementation for detailed diagnostics.63 /// See the `Reader` implementation for detailed diagnostics.
64 ReadFailed,64 ReadFailed,
65 EndOfStream,65 EndOfStream,
66};66};
6767
68pub const RwRemainingError = error{68pub const StreamRemainingError = error{
69 /// See the `Reader` implementation for detailed diagnostics.69 /// See the `Reader` implementation for detailed diagnostics.
70 ReadFailed,70 ReadFailed,
71 /// See the `Writer` implementation for detailed diagnostics.71 /// See the `Writer` implementation for detailed diagnostics.
...@@ -85,14 +85,14 @@ pub fn read(r: Reader, bw: *BufferedWriter, limit: Limit) StreamError!usize {...@@ -85,14 +85,14 @@ pub fn read(r: Reader, bw: *BufferedWriter, limit: Limit) StreamError!usize {
85 return n;85 return n;
86}86}
8787
88pub fn discard(r: Reader, limit: Limit) DiscardError!usize {88pub fn discard(r: Reader, limit: Limit) Error!usize {
89 const n = try r.vtable.discard(r.context, limit);89 const n = try r.vtable.discard(r.context, limit);
90 assert(n <= @intFromEnum(limit));90 assert(n <= @intFromEnum(limit));
91 return n;91 return n;
92}92}
9393
94/// Returns total number of bytes written to `bw`.94/// Returns total number of bytes written to `bw`.
95pub fn readRemaining(r: Reader, bw: *BufferedWriter) RwRemainingError!usize {95pub fn readRemaining(r: Reader, bw: *BufferedWriter) StreamRemainingError!usize {
96 const readFn = r.vtable.read;96 const readFn = r.vtable.read;
97 var offset: usize = 0;97 var offset: usize = 0;
98 while (true) {98 while (true) {
...@@ -212,7 +212,7 @@ fn endingRead(context: ?*anyopaque, bw: *BufferedWriter, limit: Limit) StreamErr...@@ -212,7 +212,7 @@ fn endingRead(context: ?*anyopaque, bw: *BufferedWriter, limit: Limit) StreamErr
212 return error.EndOfStream;212 return error.EndOfStream;
213}213}
214214
215fn endingDiscard(context: ?*anyopaque, limit: Limit) DiscardError!usize {215fn endingDiscard(context: ?*anyopaque, limit: Limit) Error!usize {
216 _ = context;216 _ = context;
217 _ = limit;217 _ = limit;
218 return error.EndOfStream;218 return error.EndOfStream;
...@@ -225,7 +225,7 @@ fn failingRead(context: ?*anyopaque, bw: *BufferedWriter, limit: Limit) StreamEr...@@ -225,7 +225,7 @@ fn failingRead(context: ?*anyopaque, bw: *BufferedWriter, limit: Limit) StreamEr
225 return error.ReadFailed;225 return error.ReadFailed;
226}226}
227227
228fn failingDiscard(context: ?*anyopaque, limit: Limit) DiscardError!usize {228fn failingDiscard(context: ?*anyopaque, limit: Limit) Error!usize {
229 _ = context;229 _ = context;
230 _ = limit;230 _ = limit;
231 return error.ReadFailed;231 return error.ReadFailed;
...@@ -297,7 +297,7 @@ pub fn Hashed(comptime Hasher: type) type {...@@ -297,7 +297,7 @@ pub fn Hashed(comptime Hasher: type) type {
297 return n;297 return n;
298 }298 }
299299
300 fn discard(context: ?*anyopaque, limit: Limit) DiscardError!usize {300 fn discard(context: ?*anyopaque, limit: Limit) Error!usize {
301 const this: *@This() = @alignCast(@ptrCast(context));301 const this: *@This() = @alignCast(@ptrCast(context));
302 var bw = this.hasher.writable(&.{});302 var bw = this.hasher.writable(&.{});
303 const n = this.in.read(&bw, limit) catch |err| switch (err) {303 const n = this.in.read(&bw, limit) catch |err| switch (err) {
...@@ -307,7 +307,7 @@ pub fn Hashed(comptime Hasher: type) type {...@@ -307,7 +307,7 @@ pub fn Hashed(comptime Hasher: type) type {
307 return n;307 return n;
308 }308 }
309309
310 fn readVec(context: ?*anyopaque, data: []const []u8) DiscardError!usize {310 fn readVec(context: ?*anyopaque, data: []const []u8) Error!usize {
311 const this: *@This() = @alignCast(@ptrCast(context));311 const this: *@This() = @alignCast(@ptrCast(context));
312 const n = try this.in.readVec(data);312 const n = try this.in.readVec(data);
313 var remaining: usize = n;313 var remaining: usize = n;
lib/std/io/Reader/Limited.zig+1-1
...@@ -19,7 +19,7 @@ pub fn reader(l: *Limited) Reader {...@@ -19,7 +19,7 @@ pub fn reader(l: *Limited) Reader {
19 };19 };
20}20}
2121
22fn passthruRead(context: ?*anyopaque, bw: *BufferedWriter, limit: Limit) Reader.RwError!usize {22fn passthruRead(context: ?*anyopaque, bw: *BufferedWriter, limit: Limit) Reader.StreamError!usize {
23 const l: *Limited = @alignCast(@ptrCast(context));23 const l: *Limited = @alignCast(@ptrCast(context));
24 const combined_limit = limit.min(l.remaining);24 const combined_limit = limit.min(l.remaining);
25 const n = try l.unlimited_reader.read(bw, combined_limit);25 const n = try l.unlimited_reader.read(bw, combined_limit);
lib/std/tar.zig+2-2
...@@ -358,7 +358,7 @@ pub const Iterator = struct {...@@ -358,7 +358,7 @@ pub const Iterator = struct {
358 };358 };
359 }359 }
360360
361 fn read(context: ?*anyopaque, bw: *std.io.BufferedWriter, limit: std.io.Limit) std.io.Reader.RwError!usize {361 fn read(context: ?*anyopaque, bw: *std.io.BufferedWriter, limit: std.io.Limit) std.io.Reader.StreamError!usize {
362 const file: *File = @ptrCast(@alignCast(context));362 const file: *File = @ptrCast(@alignCast(context));
363 if (file.unread_bytes.* == 0) return error.EndOfStream;363 if (file.unread_bytes.* == 0) return error.EndOfStream;
364 const n = try file.parent_reader.read(bw, limit.min(.limited(file.unread_bytes.*)));364 const n = try file.parent_reader.read(bw, limit.min(.limited(file.unread_bytes.*)));
...@@ -381,7 +381,7 @@ pub const Iterator = struct {...@@ -381,7 +381,7 @@ pub const Iterator = struct {
381 return n;381 return n;
382 }382 }
383383
384 pub fn readRemaining(file: *File, out: *std.io.BufferedWriter) std.io.Reader.RwRemainingError!void {384 pub fn readRemaining(file: *File, out: *std.io.BufferedWriter) std.io.Reader.StreamRemainingError!void {
385 return file.reader().readRemaining(out);385 return file.reader().readRemaining(out);
386 }386 }
387 };387 };
lib/std/tar/Writer.zig+1-1
...@@ -69,7 +69,7 @@ pub fn writeFileStream(...@@ -69,7 +69,7 @@ pub fn writeFileStream(
69 size: usize,69 size: usize,
70 reader: *std.io.BufferedReader,70 reader: *std.io.BufferedReader,
71 options: Options,71 options: Options,
72) std.io.Reader.RwError!void {72) std.io.Reader.StreamError!void {
73 try w.writeHeader(.regular, sub_path, "", @intCast(size), options);73 try w.writeHeader(.regular, sub_path, "", @intCast(size), options);
74 try reader.readAll(w.underlying_writer, .limited(size));74 try reader.readAll(w.underlying_writer, .limited(size));
75 try w.writePadding(size);75 try w.writePadding(size);
lib/std/zip.zig+2-2
...@@ -202,7 +202,7 @@ pub const Decompress = union {...@@ -202,7 +202,7 @@ pub const Decompress = union {
202 context: ?*anyopaque,202 context: ?*anyopaque,
203 writer: *std.io.BufferedWriter,203 writer: *std.io.BufferedWriter,
204 limit: std.io.Limit,204 limit: std.io.Limit,
205 ) std.io.Reader.RwError!usize {205 ) std.io.Reader.StreamError!usize {
206 const d: *Decompress = @ptrCast(@alignCast(context));206 const d: *Decompress = @ptrCast(@alignCast(context));
207 return d.store.read(writer, limit);207 return d.store.read(writer, limit);
208 }208 }
...@@ -211,7 +211,7 @@ pub const Decompress = union {...@@ -211,7 +211,7 @@ pub const Decompress = union {
211 context: ?*anyopaque,211 context: ?*anyopaque,
212 writer: *std.io.BufferedWriter,212 writer: *std.io.BufferedWriter,
213 limit: std.io.Limit,213 limit: std.io.Limit,
214 ) std.io.Reader.RwError!usize {214 ) std.io.Reader.StreamError!usize {
215 const d: *Decompress = @ptrCast(@alignCast(context));215 const d: *Decompress = @ptrCast(@alignCast(context));
216 return std.compress.flate.Decompress.read(&d.inflate, writer, limit);216 return std.compress.flate.Decompress.read(&d.inflate, writer, limit);
217 }217 }
src/deprecated.zig-34
...@@ -165,40 +165,6 @@ pub fn LinearFifo(comptime T: type) type {...@@ -165,40 +165,6 @@ pub fn LinearFifo(comptime T: type) type {
165 return self.read(dest);165 return self.read(dest);
166 }166 }
167167
168 pub fn reader(self: *Self) std.io.Reader {
169 return .{
170 .context = self,
171 .vtable = &.{
172 .read = &readerRead,
173 .readVec = &readerReadVec,
174 .discard = &readerDiscard,
175 },
176 };
177 }
178 fn readerRead(
179 ctx: ?*anyopaque,
180 bw: *std.io.BufferedWriter,
181 limit: std.io.Limit,
182 ) std.io.Reader.RwError!usize {
183 const fifo: *Self = @alignCast(@ptrCast(ctx));
184 _ = fifo;
185 _ = bw;
186 _ = limit;
187 @panic("TODO");
188 }
189 fn readerReadVec(ctx: ?*anyopaque, data: []const []u8) std.io.Reader.Error!usize {
190 const fifo: *Self = @alignCast(@ptrCast(ctx));
191 _ = fifo;
192 _ = data;
193 @panic("TODO");
194 }
195 fn readerDiscard(ctx: ?*anyopaque, limit: std.io.Limit) std.io.Reader.Error!usize {
196 const fifo: *Self = @alignCast(@ptrCast(ctx));
197 _ = fifo;
198 _ = limit;
199 @panic("TODO");
200 }
201
202 /// Returns number of items available in fifo168 /// Returns number of items available in fifo
203 pub fn writableLength(self: Self) usize {169 pub fn writableLength(self: Self) usize {
204 return self.buf.len - self.count;170 return self.buf.len - self.count;