package sessdata import ( "github.com/lanrenwo/lzsgo" ) type CmpEncoding interface { Compress(src []byte, dst []byte) (int, error) Uncompress(src []byte, dst []byte) (int, error) } type LzsgoCmp struct { } func (l LzsgoCmp) Compress(src []byte, dst []byte) (int, error) { n, err := lzsgo.Compress(src, dst) return n, err } func (l LzsgoCmp) Uncompress(src []byte, dst []byte) (int, error) { n, err := lzsgo.Uncompress(src, dst) return n, err } // type Lz4Cmp struct { // c lz4.Compressor // } // func (l Lz4Cmp) Compress(src []byte, dst []byte) (int, error) { // return l.c.CompressBlock(src, dst) // } // func (l Lz4Cmp) Uncompress(src []byte, dst []byte) (int, error) { // return lz4.UncompressBlock(src, dst) // }