These libraries are experimental. APIs may change without notice. Generated from source on 3/14/2026.
GZip
@korulang/gzip - Gzip compression for Koru
@koru/gzip
@korulang/gzip - Gzip compression for Koru
Wraps zlib (the industry standard) for gzip compression/decompression.
Works at both compile-time and runtime.
USAGE:
~import "$koru/gzip"
~koru.gzip:compress(data: my_bytes, allocator: alloc)
| compressed c |> // c.data is gzipped, c.original_size for stats
| error e |> // e.msg describes the error
~koru.gzip:decompress(data: gzipped, allocator: alloc)
| decompressed d |> // d.data is original content
| error e |> ...
// ============================================================================
// COMPRESS - Main compression event with level control
// ============================================================================
~pub event compress {
data: []const u8,
level: ?Level,
allocator: std.mem.Allocator
}
| compressed { data: []const u8, original_size: usize }
| error { msg: []const u8 }// ============================================================================
// COMPRESS_BYTES - Simpler variant for comptime usage
// ============================================================================
~pub event compress_bytes {
data: []const u8,
allocator: std.mem.Allocator
}
| ok { data: []const u8 }
| error { msg: []const u8 }// ============================================================================
// DECOMPRESS - Decompress gzipped data
// ============================================================================
~pub event decompress {
data: []const u8,
allocator: std.mem.Allocator
}
| decompressed { data: []const u8 }
| error { msg: []const u8 }