Expand description
Simple compression utilities for integer data
Implements Run-Length Encoding (RLE) combined with VByte and ZigZag encoding for efficient storage of sparse integer data (like wavelet coefficients).
Functions§
- compress_
rle - Compress a slice of i32 using RLE + ZigZag + VByte Format:
- decode_
vbyte - Decode a u32 using VByte encoding
- decompress_
rle - Decompress RLE data to Vec
expected_lenis the expected number of integers (optional check) - encode_
vbyte - Encode a u32 using VByte (variable length) encoding Returns the number of bytes written
- zigzag_
decode - ZigZag decode an unsigned integer to signed
- zigzag_
encode - ZigZag encode a signed integer to unsigned Maps small signed integers to small unsigned integers 0 -> 0, -1 -> 1, 1 -> 2, -2 -> 3, …