compress

Compress and decompress strings with gzip, zlib, lz4, or brotli. Every compress returns a base64 string, and every decompress expects that base64 string back. Import it with import compress.

compress.gzip

FunctionSignatureDescription
compresscompress.gzip.compress(data: string) → stringGzip-compress and base64-encode
decompresscompress.gzip.decompress(data: string) → stringBase64-decode and gzip-decompress

compress.zlib

FunctionSignatureDescription
compresscompress.zlib.compress(data: string) → stringZlib-compress and base64-encode
decompresscompress.zlib.decompress(data: string) → stringBase64-decode and zlib-decompress

compress.lz4

Uses the self-describing LZ4 frame format, so decompression needs no size hint.

FunctionSignatureDescription
compresscompress.lz4.compress(data: string) → stringLZ4-compress and base64-encode
decompresscompress.lz4.decompress(data: string) → stringBase64-decode and LZ4-decompress

compress.brotli

FunctionSignatureDescription
compresscompress.brotli.compress(data: string) → stringBrotli-compress and base64-encode
decompresscompress.brotli.decompress(data: string) → stringBase64-decode and brotli-decompress

Top-level helpers

Backward-compatible shortcuts for gzip and zlib.

FunctionSignatureDescription
gzip_compresscompress.gzip_compress(data: string) → stringSame as compress.gzip.compress
gunzipcompress.gunzip(data: string) → stringSame as compress.gzip.decompress
zlib_compresscompress.zlib_compress(data: string) → stringSame as compress.zlib.compress
unzlibcompress.unzlib(data: string) → stringSame as compress.zlib.decompress

Example

import compress

let original = "the quick brown fox jumps over the lazy dog"

// gzip round-trip via base64
let packed = compress.gzip.compress(original)
print(compress.gzip.decompress(packed))   // the quick brown fox...

// other algorithms share the same shape
let br = compress.brotli.compress(original)
print(compress.brotli.decompress(br) == original)   // true
Standard library · View as Markdown · llms-full.txt