structstd.compress.flate.deflate.huffman[src]

Creates huffman only deflate blocks. Disables Lempel-Ziv match searching and only performs Huffman entropy encoding. Results in faster compression, much less memory requirements during compression but bigger compressed sizes.

Types

Type FunctionCompressor[src]

Parameters

container: Container
WriterType: type

Source Code

Source code
pub fn Compressor(comptime container: Container, comptime WriterType: type) type {
    return SimpleCompressor(.huffman, container, WriterType);
}

Functions

Functioncompress[src]

pub fn compress(comptime container: Container, reader: anytype, writer: anytype) !void

Parameters

container: Container

Source Code

Source code
pub fn compress(comptime container: Container, reader: anytype, writer: anytype) !void {
    var c = try huffman.compressor(container, writer);
    try c.compress(reader);
    try c.finish();
}

Functioncompressor[src]

pub fn compressor(comptime container: Container, writer: anytype) !huffman.Compressor(container, @TypeOf(writer))

Parameters

container: Container

Source Code

Source code
pub fn compressor(comptime container: Container, writer: anytype) !huffman.Compressor(container, @TypeOf(writer)) {
    return try huffman.Compressor(container, @TypeOf(writer)).init(writer);
}

Source Code

Source code
pub const huffman = struct {
    pub fn compress(comptime container: Container, reader: anytype, writer: anytype) !void {
        var c = try huffman.compressor(container, writer);
        try c.compress(reader);
        try c.finish();
    }

    pub fn Compressor(comptime container: Container, comptime WriterType: type) type {
        return SimpleCompressor(.huffman, container, WriterType);
    }

    pub fn compressor(comptime container: Container, writer: anytype) !huffman.Compressor(container, @TypeOf(writer)) {
        return try huffman.Compressor(container, @TypeOf(writer)).init(writer);
    }
}