class

Brotli::Enc::LongestMatchHasher

Inherits Brotli::Enc::Hasher < Reference < Object

Port of hash_longest_match_inc.h (H5, 32-bit hash) and hash_longest_match64_inc.h (H6, 64-bit hash, 8-byte type length). Bucket/block sizes come from HasherParams (ChooseHasher).

Constructors

new(bucket_bits : Int32, block_bits : Int32, num_last_distances_to_check : Int32, use_64 : Bool)
Source

Instance methods

common
Source
find_longest_match(dict : EncoderDictionary, data : Bytes, ring_buffer_mask : Int32, distance_cache : Slice(Int32), cur_ix : Int32, max_length : Int32, max_backward : Int32, dictionary_distance : Int32, max_distance : Int32, sr : HasherSearchResult) : Nil

hash_longest_match_inc.h:156

Source
hash_type_length
Source
prepare(data : Bytes, one_shot : Bool, input_size : Int32) : Nil

hash_longest_match_inc.h:74

Source
prepare_distance_cache(distance_cache : Slice(Int32)) : Nil

hash_longest_match_inc.h:139

Source
stitch_to_previous_block(num_bytes : Int32, position : Int32, ringbuffer : Bytes, ringbuffer_mask : Int32) : Nil

hash_longest_match_inc.h:125

Source
store(data : Bytes, mask : Int32, ix : Int32) : Nil

hash_longest_match_inc.h:104

Source
store_lookahead
Source
store_range(data : Bytes, mask : Int32, ix_start : Int32, ix_end : Int32) : Nil

hash_longest_match_inc.h:116

Source