Zipc_deflateDeflate and zlib compressed data formats.
Note. This not needed to use Zipc.
This module provides (non-streaming) support to compress and decompress the deflate (RFC 1951) and zlib (RFC 1950) data formats.
module Crc_32 : sig ... endZIP CRC-32 checksums.
module Adler_32 : sig ... endAdler-32 checksums.
val inflate :
?decompressed_size:int ->
?start:int ->
?len:int ->
string ->
(string, string) Stdlib.resultinflate s are the decompressed bytes of the deflate compressed data in the range [start;start+len-1] of s. start defaults to 0 and len defaults to String.length s -
start. decompressed_size is the expected size of the decompressed data, errors if exceeded.
Returns Error _ with an english error message if the data is corrupted, if the decompressed data exceeds decompressed_size or Sys.max_string_length.
val inflate_and_crc_32 :
?decompressed_size:int ->
?start:int ->
?len:int ->
string ->
(string * Crc_32.t, string) Stdlib.resultinflate_and_crc_32 is like inflate but also returns the CRC-32 checksum of the output bytes.
val inflate_and_adler_32 :
?decompressed_size:int ->
?start:int ->
?len:int ->
string ->
(string * Adler_32.t, string) Stdlib.resultinflate_and_crc_32 is like inflate but also returns the Adler-32 checksum of the output bytes.
val zlib_decompress :
?decompressed_size:int ->
?start:int ->
?len:int ->
string ->
(string * Adler_32.t, (Adler_32.t * Adler_32.t) option * string)
Stdlib.resultzlib_decompress s are the decompressed bytes of the zlib compressed data in the range [start;start+len-1] of s. start defaults to 0 and len defaults to String.length
s - start. decompressed_size is the expected size of decompressed data, errors if exceeded. The (successfully checked) Adler-32 checksum of the decompressed data is also returned.
Returns Error _ with an english error message if the data is corrupted, if the checksum mismatches (in which case you get the expected and found CRCs in the option, the error message mentions them), if the stream declares a preset dictionary, if the decompressed data exceeds decompressed_size or Sys.max_string_length.
The type for compression levels.
val deflate :
?level:level ->
?start:int ->
?len:int ->
string ->
(string, string) Stdlib.resultdeflate s is the compressed data in deflate format of the uncompressed bytes stored in the range [start;start+len-1] of s. start defaults to 0 and len defaults to String.length s - start. level defaults to `Default.
Returns Error _ if a string cannot hold the compressed result on 32-bit platforms.
val crc_32_and_deflate :
?level:level ->
?start:int ->
?len:int ->
string ->
(Crc_32.t * string, string) Stdlib.resultcrc_32_and_deflate is like deflate but is also returns the CRC-32 checksum of the input bytes.
val adler_32_and_deflate :
?level:level ->
?start:int ->
?len:int ->
string ->
(Adler_32.t * string, string) Stdlib.resultadler_32_and_deflate is like deflate but is also returns the Adler-32 checksum of the input bytes.
val zlib_compress :
?level:level ->
?start:int ->
?len:int ->
string ->
(Adler_32.t * string, string) Stdlib.resultzlib_compress s is the compressed data in zlib format of the uncompressed bytes stored in the range [start;start+len-1] of s. start defaults to 0 and len defaults to String.length s - start. level defaults to `Default. For information the Adler-32 checksum of s is also returned.
Returns Error _ if a string cannot hold the compressed result on 32-bit platforms.