[][src]Module succinct::coding

Codes for data compression.

These universal codes currently know how to encode to a BitWrite and decode from a BitRead. However, the code that would use them to implement compressed vectors and such isn’t written yet.

Structs

Comma

Comma(n) encodes in base 2n - 1, using n bits per digit.

Elias

An Elias code.

Fibonacci

A Fibonacci code.

Lift0

Lifts any code by adding one to each encoded value, and subtracting one from each decoded value.

Omega

An Elias omega code iterates the Elias encoding.

Unary

Encodes n as n zeroes followed by a one.

Constants

COMMA

Comma(2) encodes in base 3.

DELTA

An instance of Delta.

GAMMA

An instance of Gamma.

Traits

UniversalCode

A universal code lets us encode arbitrary sized integers in a self-delimiting code.

Type Definitions

Delta

An Elias delta code encodes the header using the Elias gamma code.

Gamma

An Elias gamma code encodes the header in unary.

Result

A specialized Result type for I/O operations.