| 1 | module zlib |
| 2 | |
| 3 | import compress as compr |
| 4 | |
| 5 | // compresses an array of bytes using zlib and returns the compressed bytes in a new array |
| 6 | // Example: b := 'abcdefgh'.repeat(1000).bytes(); cmpr := zlib.compress(b)!; assert cmpr.len < b.len; dc := zlib.decompress(cmpr)!; assert b == dc |
| 7 | pub fn compress(data []u8) ![]u8 { |
| 8 | // flags = TDEFL_WRITE_ZLIB_HEADER (0x01000) |
| 9 | return compr.compress(data, 0x01000) |
| 10 | } |
| 11 | |
| 12 | // decompresses an array of bytes using zlib and returns the decompressed bytes in a new array |
| 13 | // Example: b := 'abcdefgh'.repeat(1000).bytes(); cmpr := zlib.compress(b)!; assert cmpr.len < b.len; dc := zlib.decompress(cmpr)!; assert b == dc |
| 14 | pub fn decompress(data []u8) ![]u8 { |
| 15 | // flags = TINFL_FLAG_PARSE_ZLIB_HEADER (0x1) |
| 16 | return compr.decompress(data, 0x1) |
| 17 | } |
| 18 | |