Creates store blocks only. Data are not compressed only packed into deflate store blocks. That adds 9 bytes of header for each block. Max stored block size is 64K. Block is emitted when flush is called on on finish.
container: ContainerWriterType: typepub fn Compressor(comptime container: Container, comptime WriterType: type) type {
return SimpleCompressor(.store, container, WriterType);
}pub fn compress(comptime container: Container, reader: anytype, writer: anytype) !voidcontainer: Containerpub fn compress(comptime container: Container, reader: anytype, writer: anytype) !void {
var c = try store.compressor(container, writer);
try c.compress(reader);
try c.finish();
}pub fn compressor(comptime container: Container, writer: anytype) !store.Compressor(container, @TypeOf(writer))container: Containerpub fn compressor(comptime container: Container, writer: anytype) !store.Compressor(container, @TypeOf(writer)) {
return try store.Compressor(container, @TypeOf(writer)).init(writer);
}pub const store = struct {
pub fn compress(comptime container: Container, reader: anytype, writer: anytype) !void {
var c = try store.compressor(container, writer);
try c.compress(reader);
try c.finish();
}
pub fn Compressor(comptime container: Container, comptime WriterType: type) type {
return SimpleCompressor(.store, container, WriterType);
}
pub fn compressor(comptime container: Container, writer: anytype) !store.Compressor(container, @TypeOf(writer)) {
return try store.Compressor(container, @TypeOf(writer)).init(writer);
}
}