1
Fork 0
mirror of https://github.com/RGBCube/serenity synced 2025-07-27 18:17:45 +00:00

LibCompress: Replace goto with simple recursion in DeflateCompressor

This is just a bit easier on the eyes :^)
This commit is contained in:
Idan Horowitz 2021-03-13 23:40:10 +02:00 committed by Andreas Kling
parent 1b7b503bae
commit b1e3176f9f
2 changed files with 3 additions and 6 deletions

View file

@ -188,7 +188,7 @@ private:
};
static u8 distance_to_base(u16 distance);
template<size_t Size>
static void generate_huffman_lengths(Array<u8, Size>& lengths, const Array<u16, Size>& frequencies, size_t max_bit_length);
static void generate_huffman_lengths(Array<u8, Size>& lengths, const Array<u16, Size>& frequencies, size_t max_bit_length, u16 frequency_cap = UINT16_MAX);
size_t huffman_block_length(const Array<u8, max_huffman_literals>& literal_bit_lengths, const Array<u8, max_huffman_distances>& distance_bit_lengths);
void write_huffman(const CanonicalCode& literal_code, const CanonicalCode& distance_code);
static size_t encode_huffman_lengths(const Array<u8, max_huffman_literals + max_huffman_distances>& lengths, size_t lengths_count, Array<code_length_symbol, max_huffman_literals + max_huffman_distances>& encoded_lengths);