authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2025-07-28 22:16:52-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2025-07-31 22:10:11-07:00
log4741a16d9aab40bea8f1cf604337b3de067accb5
tree9dd8f673fc5d0447bd7a3608cec63708ee67bf0c
parent05ce1f99a60df0bcede00af1c98a1e5fdce35051

putting stuff back does not require mutation


1 files changed, 0 insertions(+), 12 deletions(-)

lib/std/compress/flate/Decompress.zig-12
......@@ -500,17 +500,10 @@ fn takeBitsRuntime(d: *Decompress, n: u4) !u16 {
500500
501501fn alignBitsDiscarding(d: *Decompress) void {
502502 const remaining_bits = d.remaining_bits;
503 const next_bits = d.next_bits;
504503 if (remaining_bits == 0) return;
505 const discard_bits = remaining_bits % 8;
506504 const n_bytes = remaining_bits / 8;
507 var put_back_bits = next_bits >> discard_bits;
508505 const in = d.input;
509506 in.seek -= n_bytes;
510 for (in.buffer[in.seek..][0..n_bytes]) |*b| {
511 b.* = @truncate(put_back_bits);
512 put_back_bits >>= 8;
513 }
514507 d.remaining_bits = 0;
515508 d.next_bits = 0;
516509}
......@@ -521,11 +514,6 @@ fn alignBitsPreserving(d: *Decompress) void {
521514 const n_bytes = (remaining_bits + 7) / 8;
522515 const in = d.input;
523516 in.seek -= n_bytes;
524 var put_back_bits = d.next_bits;
525 for (in.buffer[in.seek..][0..n_bytes]) |*b| {
526 b.* = @truncate(put_back_bits);
527 put_back_bits >>= 8;
528 }
529517 d.remaining_bits = 0;
530518 d.next_bits = 0;
531519}