Module std.encoding.compress
Compression and decompression (gzip, deflate, zlib).
Compress and decompress binary data using gzip, raw deflate, or
zlib formats. Each helper takes bytes and fails with a
CompressError carrying the codec's reason.
Decompression callers must pass an explicit max_output_len to fail
closed on oversized payloads; a conservative starting point is
64 * 1024 * 1024.
Examples
import std.encoding.compress;
fn main() {
var data: bytes = bytes.new();
data.push(72);
data.push(101);
data.push(108);
data.push(108);
data.push(111);
let compressed = compress.gzip_compress(data) handle error {
println(f"operation failed: {error}");
return;
};
let decompressed = compress.gzip_decompress(compressed, 64 * 1024 * 1024) handle error {
println(f"operation failed: {error}");
return;
};
println(decompressed.len()); // 5
}
Contents
- fn gzip_compress
- fn gzip_decompress
- fn deflate_compress
- fn deflate_decompress
- fn zlib_compress
- fn zlib_decompress
- enum CompressError
Functions
Function gzip_compress
pub fn gzip_compress(data: bytes) -> bytes fails CompressError
Gzip-compress data without panicking.
Fails with CompressError.Compress on codec failure. Empty output alone
does not indicate failure.
Function gzip_decompress
pub fn gzip_decompress(data: bytes, max_output_len: i64) -> bytes fails CompressError
Gzip-decompress data without panicking.
Function deflate_compress
pub fn deflate_compress(data: bytes) -> bytes fails CompressError
Deflate-compress data (raw DEFLATE) without panicking.
Function deflate_decompress
pub fn deflate_decompress(data: bytes, max_output_len: i64) -> bytes fails CompressError
Deflate-decompress data (raw DEFLATE) without panicking.
Function zlib_compress
pub fn zlib_compress(data: bytes) -> bytes fails CompressError
Zlib-compress data without panicking.
Function zlib_decompress
pub fn zlib_decompress(data: bytes, max_output_len: i64) -> bytes fails CompressError
Zlib-decompress data without panicking.