Improve this page
Quickly fork, edit online, and submit a pull request for this page.
Requires a signed-in GitHub account. This works well for small changes.
If you'd like to make larger changes you may want to consider using
local clone.
Page wiki
View or edit the community-maintained wiki page associated with this page.
std.zlib
Compress/decompress data using the zlib library. References:Wikipedia License:
Boost License 1.0. Authors:
Walter Bright Source:
std/zlib.d
- class ZlibException: object.Exception;
- Errors throw a ZlibException.
- uint adler32(uint adler, const(void)[] buf);
- Compute the Adler32 checksum of the data in buf[]. adler is the starting value when computing a cumulative checksum.
- uint crc32(uint crc, const(void)[] buf);
- Compute the CRC32 checksum of the data in buf[]. crc is the starting value when computing a cumulative checksum.
- const(void)[] compress(const(void)[] srcbuf, int level);
const(void)[] compress(const(void)[] buf); - Compresses the data in srcbuf[] using compression level level. The default value for level is 6, legal values are 1..9, with 1 being the least compression and 9 being the most. Returns the compressed data.
- void[] uncompress(void[] srcbuf, size_t destlen = 0u, int winbits = 15);
- Decompresses the data in srcbuf[].
Parameters:
Returns:size_t destlen size of the uncompressed data. It need not be accurate, but the decompression will be faster if the exact size is supplied.
the decompressed data. - enum HeaderFormat;
- the header format the compressed stream is wrapped in
- class Compress;
- Used when the data to be compressed is not all in one buffer.
- this(int level, HeaderFormat header = HeaderFormat.deflate);
this(HeaderFormat header = HeaderFormat.deflate); - Construct. level is the same as for D.zlib.compress(). header can be used to make a gzip compatible stream.
- const(void)[] compress(const(void)[] buf);
- Compress the data in buf and return the compressed data. The buffers returned from successive calls to this should be concatenated together.
- void[] flush(int mode = Z_FINISH);
- Compress and return any remaining data.
The returned data should be appended to that returned by compress().
Parameters:
int mode one of the following: - Z_SYNC_FLUSH
- Syncs up flushing to the next byte boundary. Used when more data is to be compressed later on.
- Z_FULL_FLUSH
- Syncs up flushing to the next byte boundary. Used when more data is to be compressed later on, and the decompressor needs to be restartable at this point.
- Z_FINISH
- (default) Used when finished compressing the data.
- this(int level, HeaderFormat header = HeaderFormat.deflate);
- class UnCompress;
- Used when the data to be decompressed is not all in one buffer.
- this(uint destbufsize);
this(HeaderFormat format = HeaderFormat.determineFromData); - Construct. destbufsize is the same as for D.zlib.uncompress().
- const(void)[] uncompress(const(void)[] buf);
- Decompress the data in buf and return the decompressed data. The buffers returned from successive calls to this should be concatenated together.
- void[] flush();
- Decompress and return any remaining data. The returned data should be appended to that returned by uncompress(). The UnCompress object cannot be used further.
- this(uint destbufsize);