Types
CompZscBytes = seq[byte]
DecompZscBytes = seq[byte]
ZxcError = object of CatchableError code*: cint
Procs
proc `$`(decompZscBytes: DecompZscBytes): string {....raises: [], tags: [], forbids: [].}
- String representation of decompressed bytes for debugging
proc bytesToString(b: openArray[byte]): string {....raises: [], tags: [], forbids: [].}
- Converts a byte sequence to a string (UTF-8 decoding)
proc compress(s: string; output: var CompZscBytes; level: ZxcCompressionLevel = ZXC_LEVEL_DEFAULT; checksumEnabled = false) {....raises: [ZxcError], tags: [], forbids: [].}
- Compresses the given string and returns the compressed bytes
proc compressBytes(input: openArray[byte]; output: var CompZscBytes; level: ZxcCompressionLevel; checksumEnabled: bool) {. ...raises: [ZxcError], tags: [], forbids: [].}
- Compresses the given bytes to the mutable output sequence.
proc compressFile(inputPath, outputPath: string; level: ZxcCompressionLevel = ZXC_LEVEL_DEFAULT; checksumEnabled = false) {....raises: [ZxcError], tags: [ReadDirEffect], forbids: [].}
- Fast file compression via ZXC streaming API with optional checksum
proc compressStream(fIn, fOut: File; level: ZxcCompressionLevel = ZXC_LEVEL_DEFAULT; nThreads: cint = 0; blockSize: csize_t = 0; checksumEnabled = true; seekable = false; progressCb: ZxcProgressCallback = nil; userData: pointer = nil): int64 {....raises: [ZxcError], tags: [], forbids: [].}
- High-level streaming compression on already-open files.
proc compressString(s: string; level: ZxcCompressionLevel = ZXC_LEVEL_DEFAULT; checksumEnabled = false): CompZscBytes {....raises: [ZxcError], tags: [], forbids: [].}
- Compresses the given string and returns the compressed bytes
proc decompress(compressed: openArray[byte]; output: var DecompZscBytes; checksumEnabled: bool = false) {....raises: [ZxcError], tags: [], forbids: [].}
- Decompresses the given compressed bytes and returns the result
proc decompressBytes(compressed: openArray[byte]; output: var DecompZscBytes; checksumEnabled: bool) {....raises: [ZxcError], tags: [], forbids: [].}
- Decompresses the given compressed bytes. The output sequence is resized to fit the decompressed data
proc decompressFile(inputPath, outputPath: string; checksumEnabled = false) {. ...raises: [ZxcError], tags: [], forbids: [].}
- Fast file decompression via ZXC streaming API with optional checksum verification.
proc decompressStream(fIn, fOut: File; nThreads: cint = 0; checksumEnabled = true; progressCb: ZxcProgressCallback = nil; userData: pointer = nil): int64 {....raises: [ZxcError], tags: [], forbids: [].}
- High-level streaming decompression on already-open files with optional multithreading and progress callback.
proc decompressString(compressed: openArray[byte]; checksumEnabled: bool = false): string {. ...raises: [ZxcError], tags: [], forbids: [].}
- Decompresses the given compressed bytes and returns the result as a string
proc raiseZxc(code: int64; msg: string) {.noreturn, ...raises: [ZxcError], tags: [], forbids: [].}
- Raises a ZxcError with the given code and message
proc stringToBytes(s: string): seq[byte] {....raises: [], tags: [], forbids: [].}
- Converts a string to a byte sequence (UTF-8 encoding)
Exports
-
ZXC_ERROR_OVERFLOW, zxc_compress_opts_t, zxc_compress_cctx, zxc_free_cctx, zxc_decompress, zxc_cctx, ZXC_BLOCK_SIZE_MAX_LOG2, zxc_decompress_opts_t, zxc_stream_compress, zxc_create_dctx, ZXC_ERROR_BAD_HEADER, zxc_dctxPtr, ZXC_ERROR_CORRUPT_DATA, ZXC_ERROR_IO, zxc_compress, ZXC_ERROR_BAD_BLOCK_SIZE, ZXC_BLOCK_SIZE_MAX, zxc_error_name, ZXC_ERROR_MEMORY, ZXC_BLOCK_SIZE_MIN, zxc_stream_get_decompressed_size, zxc_version_string, zxc_free_dctx, zxc_min_level, ZXC_OK, zxc_default_level, zxc_progress_callback_t, ZXC_ERROR_SRC_TOO_SMALL, ZXC_ERROR_BAD_BLOCK_TYPE, ZXC_ERROR_BAD_VERSION, zxc_compress_block, zxc_nim_progress_cb_t, zxc_decompress_dctx, ZXC_BLOCK_SIZE_MIN_LOG2, zxc_decompress_block, ZXC_ERROR_BAD_OFFSET, zxc_create_cctx, ZXC_ERROR_BAD_MAGIC, ZXC_ERROR_BAD_CHECKSUM, zxc_stream_decompress, zxc_compression_level_t, zxc_compress_bound, zxc_get_decompressed_size, ZXC_BLOCK_SIZE_DEFAULT, ZXC_ERROR_NULL_INPUT, zxc_compress_block_bound, zxc_dctx, zxc_cctxPtr, ZXC_ERROR_DST_TOO_SMALL, zxc_max_level