package compressor
import "github.com/containers/storage/pkg/chunked/compressor"
Package rollsum implements rolling checksums similar to apenwarr's bup, which is similar to librsync.
The bup project is at https://github.com/apenwarr/bup and its splitting in particular is at https://github.com/apenwarr/bup/blob/master/lib/bup/bupsplit.c
Index ¶
- Constants
- func ZstdCompressor(r io.Writer, metadata map[string]string, level *int) (io.WriteCloser, error)
- type RollSum
Constants ¶
const (
RollsumBits = 16
)
Functions ¶
func ZstdCompressor ¶
ZstdCompressor is a CompressorFunc for the zstd compression algorithm.
Types ¶
type RollSum ¶
type RollSum struct {
// contains filtered or unexported fields
}
func NewRollSum ¶
func NewRollSum() *RollSum
func (*RollSum) Bits ¶
func (*RollSum) Digest ¶
func (*RollSum) OnSplit ¶
OnSplit reports whether at least 13 consecutive trailing bits of the current checksum are set the same way.
func (*RollSum) OnSplitWithBits ¶
OnSplitWithBits reports whether at least n consecutive trailing bits of the current checksum are set the same way.
func (*RollSum) Roll ¶
Roll adds ch to the rolling sum.
Source Files ¶
- Version
- v1.58.0 (latest)
- Published
- Apr 15, 2025
- Platform
- linux/amd64
- Imports
- 11 packages
- Last checked
- 3 weeks ago –
Tools for package owners.