Crate ppmd_rust

Source
Expand description

PPMd compression / decompression. It’s a port of the PPMd C-code from 7-Zip to Rust.

The following variants are provided:

  • The PPMd7 (PPMdH) as used by the 7z archive format
  • The PPMd8 (PPMdI rev.1) as used by the zip archive format

§Acknowledgement

This port is based on the 7zip version of PPMd by Igor Pavlov, which in turn was based on the PPMd var.H (2001) / PPMd var.I (2002) code by Dmitry Shkarin. The carryless range coder of PPMd8 was originally written by Dmitry Subbotin (1999).

§License

The code in this crate is in the public domain as the original code by their authors.

Structs§

Ppmd7Decoder
A decoder to decompress data using PPMd7 (PPMdH) with the 7z range coder.
Ppmd7Encoder
An encoder to compress data using PPMd7 (PPMdH) with the 7z range coder.
Ppmd8Decoder
A decoder to decompress data using PPMd8 (PPMdI rev.1).
Ppmd8Encoder
A encoder to compress data using PPMd8 (PPMdI rev.1).

Enums§

Error
Crate error type.
RestoreMethod
The restore method used in PPMd8.

Constants§

PPMD7_MAX_MEM_SIZE
The maximal memory that PPMd7 supports.
PPMD7_MAX_ORDER
The maximal order PPMd7 supports.
PPMD7_MIN_MEM_SIZE
The minimal memory that PPMd7 supports.
PPMD7_MIN_ORDER
The minimal order PPMd7 supports.
PPMD8_MAX_MEM_SIZE
The maximal memory that PPMd8 supports.
PPMD8_MAX_ORDER
The maximal order PPMd8 supports.
PPMD8_MIN_MEM_SIZE
The minimal memory that PPMd8 supports.
PPMD8_MIN_ORDER
The minimal order PPMd8 supports.

Type Aliases§

Result
Error type of the crate.