zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit b0608a3bd28b402ab33cb6b74ee97d194d8df229 (tree)
parent 20b3aa3bcd55ad8f3f545f5ab0f0c2ac7122e2a2
Author: Ryan Liptak <squeek502@hotmail.com>
Date:   Mon,  8 Jun 2026 17:16:22 -0700

Remove std.zip.Decompress (unused/broken/obsolete)

This API is unused, doesn't compile, and is a holdover from the previous std.zip implementation where the analogous functionality was in a decompress() function that was used within Entry.extract. The decompression functionality is now inlined in Entry.extract so this Decompress struct is superfluous.

Closes #35678

Diffstat:
Mlib/std/zip.zig | 44--------------------------------------------
1 file changed, 0 insertions(+), 44 deletions(-)

diff --git a/lib/std/zip.zig b/lib/std/zip.zig @@ -164,50 +164,6 @@ pub const EndRecord = extern struct { } }; -pub const Decompress = struct { - interface: Reader, - state: union { - inflate: flate.Decompress, - store: *Reader, - }, - - pub fn init(reader: *Reader, method: CompressionMethod, buffer: []u8) Reader { - return switch (method) { - .store => .{ - .state = .{ .store = reader }, - .interface = .{ - .context = undefined, - .vtable = &.{ .stream = streamStore }, - .buffer = buffer, - .end = 0, - .seek = 0, - }, - }, - .deflate => .{ - .state = .{ .inflate = .init(reader, .raw) }, - .interface = .{ - .context = undefined, - .vtable = &.{ .stream = streamDeflate }, - .buffer = buffer, - .end = 0, - .seek = 0, - }, - }, - else => unreachable, - }; - } - - fn streamStore(r: *Reader, w: *Writer, limit: std.Io.Limit) Reader.StreamError!usize { - const d: *Decompress = @fieldParentPtr("interface", r); - return d.store.read(w, limit); - } - - fn streamDeflate(r: *Reader, w: *Writer, limit: std.Io.Limit) Reader.StreamError!usize { - const d: *Decompress = @fieldParentPtr("interface", r); - return flate.Decompress.read(&d.inflate, w, limit); - } -}; - fn isBadFilename(filename: []const u8) bool { if (filename.len == 0 or filename[0] == '/') return true;