abstract class Crabbit::CompressionCodec

Overview

Interface for a Stream sub-entry compression algorithm.

Custom implementations can be installed with CompressionCodecs#register. Decompression must return exactly expected_size bytes or raise CompressionError.

Direct Known Subclasses

Defined in:

crabbit/compression.cr

Instance Method Summary

Instance Method Detail

abstract def compress(source : Bytes) : Bytes #

Compresses source and returns a newly owned byte slice.


[View source]
abstract def compression : Compression #

Returns the protocol algorithm implemented by this codec.


[View source]
abstract def decompress(source : Bytes, expected_size : Int32) : Bytes #

Decompresses source to exactly expected_size bytes.


[View source]